(57)【要約】      （修正有）【課題】潜在的な障害物の存在下で、自動運転車両（ＡＤＶ）のための駐車計画を最適化する。【解決手段】ＡＤＶは、駐車場を検出して駐車スペースを選択する。ＡＤＶは、駐車場、駐車スペースに用いられる制約及びＡＤＶの運動学的制約を定義し、ＡＤＶの周辺に存在可能な如何なる障害物を考慮せず、駐車場、駐車スペース及びＡＤＶの運動学的制約を考慮して駐車スペースへの複数の潜在的な駐車経路を生成する。ＡＤＶは、それぞれの駐車経路を通過するコストを確定する。駐車経路から一つ又は複数の最小コスト候補経路を選択し、ＡＤＶを囲む障害物に基づいて一つ又は複数の候補経路を排除する。残りの候補は、二次最適化システムを用いて分析することができる。残りの候補から最適な駐車経路を選択して、ＡＤＶを駐車スペースにナビゲートする。【選択図】図５
2020001677.tif 000002
【特許請求の範囲】
【請求項１】
自動運転車両を駐車するためのコンピュータ実施方法であって、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップと、を含む、
自動運転車両を駐車するためのコンピュータ実施方法。
【請求項２】
前記複数の駐車経路のそれぞれが１つ又は複数の区間を含み、前記１つ又は複数の区間のそれぞれがコストを有し、前記駐車経路における前記区間のコストに少なくとも部分的に基づいて駐車経路のコストを確定するステップを更に含む、
請求項１に記載の方法。
【請求項３】
前記自動運転車両の複数の運動学的制約を確定し、前記自動運転車両の前記複数の運動学的制約に少なくとも部分的に基づいて前記複数の駐車経路を決定する、
請求項１に記載の方法。
【請求項４】
前記複数の運動学的制約は、前記自動運転車両の長さ、前記自動運転車両の幅、前記自動運転車両の最大操舵角、前記自動運転車両の最大加速度又は減速度、前記自動運転車両の最高速度又は最低速度、及び前記自動運転車両が前進モードと後進モードのどちらで走行しているか、のうちの一つ又は複数を含む、
請求項３に記載の方法。
【請求項５】
前記複数の駐車スペース制約及び障害物制約は、アフィン集合又は凸形状の集合として表される、
請求項１に記載の方法。
【請求項６】
前記複数の駐車スペース制約及び前記障害物制約は、アフィン集合として表され、
前記残りの候補駐車経路から駐車経路を選択するステップは、前記一つ又は複数の候補駐車経路に対する前記駐車スペース制約及び前記障害物制約について二次最適化を実行することを更に含む、
請求項５に記載の方法。
【請求項７】
前記一つ又は複数の候補経路のうちの少なくとも１つが排除された後に、候補経路が残っていないことが確定されたことに応答して、
少なくとも１つの障害物の少なくとも１つの制約を自動的に緩和するステップと、
少なくとも１つの先に排除された候補を前記残りの候補経路に含めるステップと、を更に含む、
請求項１に記載の方法。
【請求項８】
実行可能な命令を有する非一時的なコンピュータ可読媒体であって、
前記実行可能な命令が処理システムによって実行される場合、自動運転車両を駐車するための動作を実行させ、前記動作は、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップとを含む、
実行可能な命令を有する非一時的なコンピュータ可読媒体。
【請求項９】
前記複数の駐車経路のそれぞれが１つ又は複数の区間を含み、前記１つ又は複数の区間のそれぞれがコストを有し、前記駐車経路における前記区間のコストに少なくとも部分的に基づいて駐車経路のコストを確定する、
請求項８に記載の媒体。
【請求項１０】
前記動作は、前記自動運転車両の複数の運動学的制約を確定し、前記自動運転車両の前記複数の運動学的制約に少なくとも部分的に基づいて前記複数の駐車経路を決定するステップを更に含む、
請求項８に記載の媒体。
【請求項１１】
前記複数の運動学的制約は、前記自動運転車両の長さ、前記自動運転車両の幅、前記自動運転車両の最大操舵角、前記自動運転車両の最大加速度又は減速度、前記自動運転車両の最高速度又は最低速度、及び前記自動運転車両が前進モードと後進モードのどちらで走行しているか、のうちの一つ又は複数を含む、
請求項１０に記載の媒体。
【請求項１２】
前記複数の駐車スペース制約及び障害物制約は、アフィン集合又は凸形状の集合として表される、
請求項８に記載の媒体。
【請求項１３】
前記複数の駐車スペース制約及び前記障害物制約は、アフィン集合として表され、
前記残りの候補駐車経路から駐車経路を選択するステップは、前記一つ又は複数の候補駐車経路に用いられる前記駐車スペース制約及び前記障害物制約に対して二次最適化を実行することを更に含む、
請求項１２に記載の媒体。
【請求項１４】
前記一つ又は複数の候補経路のうちの少なくとも１つが排除された後に、候補経路が残っていないことが確定されたことに応答して、
少なくとも１つの障害物の少なくとも１つの制約を自動的に緩和するステップと、
少なくとも１つの先に排除された候補を前記残りの候補経路に含めるステップと、を更に含む、
請求項８に記載の媒体。
【請求項１５】
処理システムを備えるシステムであって、前記処理システムは少なくとも一つのハードウェアプロセッサを有するとともに実行可能な命令がプログラミングされたメモリに接続され、前記実行可能な命令が前記処理システムによって実行される場合、前記処理システムは自動運転車両を駐車するための動作を実行し、前記動作は、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップとを含む、
システム。
【請求項１６】
前記複数の駐車経路のそれぞれが一つ又は複数の区間を含み、前記１つ又は複数の区間のそれぞれがコストを有し、前記駐車経路における前記区間のコストに少なくとも部分的に基づいて駐車経路のコストを確定する、
請求項１５に記載のシステム。
【請求項１７】
前記動作は、前記自動運転車両の複数の運動学的制約を確定し、前記自動運転車両の前記複数の運動学的制約に少なくとも部分的に基づいて前記複数の駐車経路を決定するステップを更に含む、
請求項１５に記載のシステム。
【請求項１８】
前記複数の運動学的制約は、前記自動運転車両の長さ、前記自動運転車両の幅、前記自動運転車両の最大操舵角、前記自動運転車両の最大加速度又は減速度、前記自動運転車両の最高速度又は最低速度、及び前記自動運転車両が前進モードと後進モードのどちらで走行しているか、のうちの一つ又は複数を含む、
請求項１７に記載のシステム。
【請求項１９】
前記複数の駐車スペース制約及び障害物制約は、アフィン集合又は凸形状の集合として表される、
請求項１５に記載のシステム。
【請求項２０】
前記複数の駐車スペース制約及び前記障害物制約は、アフィン集合として表され、
前記残りの候補駐車経路から駐車経路を選択するステップは、前記一つ又は複数の候補駐車経路に用いられる前記駐車スペース制約及び前記障害物制約に対して二次最適化を実行することを更に含む、
請求項１９に記載のシステム。
【請求項２１】
前記動作は、前記一つ又は複数の候補経路のうちの少なくとも１つが排除された後に、候補経路が残っていないことが確定されたことに応答して、
少なくとも１つの障害物の少なくとも１つの制約を自動的に緩和するステップと、
少なくとも１つの先に排除された候補を前記残りの候補経路に含めるステップとを更に含む、
請求項１５に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、本開示の実施形態は、主に自動運転車両を動作させることに関し、より具体的には、潜在的な障害物の存在下で、自動運転車両（ＡＤＶ）のための駐車計画を最適化するための駐車計画に関する。
【背景技術】
【０００２】
駐車計画は、自動運転車両（ＡＤＶ）をＡＤＶのルートにおける一つ又は複数の移動障害物の周りで駐車スペースまでナビゲートするときに重要である。従来技術においては、駐車計画アルゴリズムは、駐車する車両のすぐ周辺にある静的障害物を考慮に入れるジグザグアルゴリズムを使用する。このような障害物は、他の駐車中の車両、道路の縁石及び他の固定障害物を含んでもよい。人間の運転手に自動駐車支援特徴を提供する車両内の駐車ロジックは、車両の周辺のオブジェクトを検出することができるが、オブジェクトの位置、速度及び方向を予測することができない。従って、障害物は、最初には移動中の車両の近くに位置していなくても、車両に向かって移動している可能性があり、駐車ロジックは、障害物が車両の周辺の所定の境界内に位置するまで当該障害物を考慮しない。これは、移動する障害物との衝突を回避するには、遅すぎるかもしれない。
【０００３】
自動駐車支援システムにおける現在の駐車ロジックは、車両を駐車する際の障害物の動きを考慮していない。ＡＤＶは、移動する障害物を検出することができる。しかし、従来技術のＡＤＶは、前進走行のために設計されている。駐車は、通常に駐車プロセスの少なくとも一部において後進走行に関わる。従来技術のＡＤＶは、駐車支援を有する人間運転の自動車と同じ方法で駐車する。即ち、駐車経路を計画するときに、特に、駐車経路が後進走行に関わる際に、障害物を静的物体として扱い、障害物の速度、方向及び動きを考慮しない。
【０００４】
従来技術においては、駐車問題の解決案は、計算コストが高い。１００秒又はより長い時間内に解決案を生み出さないものもあるので、これは、乗客の駐車及びＡＤＶにとって許容できないほどの遅れである。また、いくつかの従来技術の解決案は、駐車問題に対する解決策を生み出すことが全く確保されていない。
【図面の簡単な説明】
【０００５】
本開示の実施形態は、図面の各図において限定的ではなく例示的な形態で示され、図面における同じ図面符号が類似した素子を示す。
【図１】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法を実施するためのネットワークシステムを示すブロック図である。
【図２】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法を実施可能な自動運転車両の一例を示すブロック図である。
【図３】一実施形態に係る自動運転車両の感知及び計画システムの一例を示すブロック図であり、当該感知及び計画システムは、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画し、障害物を避けるための最適化方法を実施する。
【図４Ａ】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。
【図４Ｂ】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。
【図４Ｃ】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。
【図５】実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法を示すブロック図である。
【図６】実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法を示すブロック図である。
【図７】一実施形態に係るデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【０００６】
以下、説明される詳細を参考しながら、本開示の様々な実施形態および態様を説明し、添付図面に前記様々な実施形態を示す。以下の説明及び図面は、本開示を例示するためのものであり、限定するものとして解釈されるべきではない。本開示の様々な実施形態を全面的に理解するために、多数の特定の詳細を説明するが、いくつかの場合、本開示の実施形態に対する簡潔的な説明を提供するように、周知又は従来技術の詳細について説明していない。
【０００７】
本明細書において、「一実施形態」又は「実施形態」とは、当該実施形態に組み合わせて説明された特定の特徴、構造又は特性が本開示の少なくとも一実施形態に含まれてもよいと意味する。「一実施形態では」という表現は、本明細書の全体において全てが同一の実施形態を指すとは限らない。
【０００８】
一実施形態では、自動運転車両（ＡＤＶ）を駐車するためのコンピュータ実施方法は、選択された駐車スペースの複数の駐車スペース制約を確定するステップと、選択された駐車スペースの複数の駐車スペース制約に少なくとも部分的に基づいて、ＡＤＶの現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、複数の駐車経路のそれぞれのためのコストを確定するステップと、最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、候補駐車経路のそれぞれに沿うＡＤＶを囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を候補駐車経路から排除するステップと、残りの候補駐車経路から駐車経路を選択し、選択された駐車経路に基づいて、ＡＤＶをナビゲートするための基準線を生成するステップと、基準線を用いて、ＡＤＶをＡＤＶの現在位置から駐車スペースまでナビゲートするステップとを含む。
【０００９】
もう一つの実施形態では、ＡＤＶは、駐車場の位置を判定し、ＡＤＶの駐車場における位置を決定し、駐車場におけるＡＤＶの駐車スペースを選択する。ＡＤＶは、駐車問題をＡＤＶの複数の駐車スペース制約及び運動学的制約に形成する。運動学的制約は、ＡＤＶの物理的寸法、最大及び最小加速度値、最高及び最低速度値、ＡＤＶの最大操舵角、ＡＤＶの重量、ＡＤＶの最大ブレーキ能力などであってもよい。実施形態では、ＡＤＶは、ＡＤＶの周辺の障害物を考慮しない場合、駐車スペース制約及び駐車場制約をアフィン集合に形成し、複数の駐車経路を生成する。各駐車経路は、いずれも一つ又は複数の区間を有し、各区間は、それと関連するコストを有する。区間のコストは、走行距離、当該距離を走行する時間を含んでもよい。実施形態では、他のコスト要素は、当該区間をナビゲートするために必要な加速度、速度又は操舵角の量を含んでもよい。駐車経路のコストは、駐車経路における各区間のコストの合計であってもよい。ＡＤＶは、複数の駐車経路から最もコストの低い一つ又は複数の候補駐車経路を選択してもよい。そして、ＡＤＶは、ＡＤＶの周辺の障害物を考慮して候補駐車経路のうちの一つ又は複数を排除することができる。駐車経路を排除するか否かを判定するために、ＡＤＶの障碍並びに駐車場及び駐車スペースの制約は、アフィン集合として表すことができる。各候補駐車経路について、一つ又は複数の障害物が候補駐車経路の一つ又は複数の区間と衝突するか否かを分析することができる。候補駐車経路は、二次最適化方法を用いて最適化を行うことができる。残りの候補から適切な駐車経路を見つけることができる。適切な駐車経路が見つかっていない場合、ＡＤＶロジックは、駐車問題における制約のうちの一つ又は複数を緩和するように自動的に調整することができ、当該制約は、障害物、駐車スペース及びＡＤＶの運動学的制約を含む。そして、ＡＤＶロジックは、緩和された制約に基づいて他の複数の駐車経路を生成することができる。残りの候補駐車経路から適切な駐車経路が選択されると、ＡＤＶは、ＡＤＶの現在位置から選択された駐車スペースまでナビゲートするためのＡＤＶ用の基準線を生成することができる。
【００１０】
本明細書に開示された方法動作のいずれは、処理システムにより実施されることができ、当該処理システムは、少なくとも一つのハードウェアプロセッサを含み、当該ハードウェアプロセッサは、実行可能な命令がプログラミングされたメモリに接続され、当該実行可能な命令が実行されると、前記方法動作を実行する。このような実行可能な命令は、一つ又は複数の非一時的なコンピュータ可読媒体に記憶されてもよい。
【００１１】
図１は、一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する際の駐車軌跡を計画するための最適化方法を実施するためのネットワークシステム１００を示すブロック図である。
【００１２】
図１に示すように、ネットワーク構成１００は、ネットワーク１０２を介して一つ又は複数のサーバ１０３〜１０４に通信可能に接続される自動運転車両１０１を含む。一台の自動運転車両が示されているが、複数台の自動運転車両がネットワーク１０２を介して互いに接続されるか、及び／又はサーバ１０３〜１０４に接続されてもよい。ネットワーク１０２は、任意のタイプのネットワーク、例えば、有線又は無線のローカルエリアネットワーク（ＬＡＮ）、インターネットのようなワイドエリアネットワーク（ＷＡＮ）、セルラーネットワーク、衛星ネットワーク又はそれらの組み合わせであってもよい。サーバ１０３〜１０４は、任意のタイプのサーバ又はサーバクラスタであってもよく、例えば、ネットワーク又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ又はそれらの組み合わせであってもよい。サーバ１０３〜１０４は、データ解析サーバ、コンテンツサーバ、交通情報サーバ、地図及び関心地点（ＭＰＯＩ）サーバ又は位置サーバなどであってもよい。
【００１３】
自動運転車両は、自動運転モードで動作するように構成可能な車両を指し、前記自動運転モードにおいて、運転手からの入力が非常に少ないか又は全くない場合に車両が環境を通過するようにナビゲートされる。このような自動運転車両は、車両の動作環境に関連する情報を検出するように構成された１つ以上のセンサを有するセンサシステムを含んでもよい。前記車両及びその関連するコントローラは、検出された情報を使用して前記環境を通過するようにナビゲートする。自動運転車両１０１は、手動モード、全自動運転モード又は部分自動運転モードで走行することができる。
【００１４】
実施形態では、自動運転車両１０１は、感知及び計画システム１１０と、車両制御システム１１１と、無線通信システム１１２と、ユーザインターフェースシステム１１３と、インフォティメントシステム１１４と、センサシステム１１５とを含むが、これらに限定されない。自動運転車両１０１は、更にエンジン、車輪、ステアリングホイール、変速機などの従来の車両に含まれるいくつかの共通構成要素を含んでもよい。前記構成要素は、車両制御システム１１１及び／又は感知及び計画システム１１０によって様々な通信信号及び／又はコマンドで制御されることができ、これらの様々な通信信号及び／又はコマンドは、例えば加速信号又はコマンド、減速信号又はコマンド、ステアリング信号又はコマンド、ブレーキ信号又はコマンドなどを含む。
【００１５】
構成要素１１０〜１１５は、インターコネクト、バス、ネットワーク又はそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素１１０〜１１５は、コントローラエリアネットワーク（ＣＡＮ）バスを介して互いに通信可能に接続することができる。ＣＡＮバスは、ホストコンピュータなしのアプリケーションでマイクロコントローラ及びデバイスが互いに通信できるように設計された車両バス規格である。それは、もともと自動車内部の多重電気配線のために設計されたメッセージに基づくプロトコルであるが、他の多くの環境にも使用される。
【００１６】
ここで、図２に示すように、一実施形態では、センサシステム１１５は、一つ又は複数のカメラ２１１と、全地球測位システム（ＧＰＳ）ユニット２１２と、慣性計測ユニット（ＩＭＵ）２１３と、レーダユニット２１４と、光検出及び測距（ＬＩＤＡＲ）ユニット２１５とを含むが、これらに限定されない。ＧＰＳユニット２１２は、自動運転車両の位置に関する情報を提供するように動作可能な送受信機を含んでもよい。ＩＭＵユニット２１３は、慣性加速度に基づいて自動運転車両の位置及び配向の変化を検知することができる。レーダユニット２１４は、無線信号を利用して自動運転車両のローカル環境内のオブジェクトを検知するシステムを表すことができる。いくつかの実施形態では、オブジェクトを検知することに加えて、レーダユニット２１４は、更にオブジェクトの速度及び／又は進行方向を検知することができる。ＬＩＤＡＲユニット２１５は、レーザを使用して自動運転車両の所在環境の中のオブジェクトを検知することができる。その他のシステム構成要素以外に、ＬＩＤＡＲユニット２１５は、一つ又は複数のレーザ源、レーザスキャンナ及び一つ又は複数の検出器を更に含むことができる。カメラ２１１は、自動運転車両の周辺環境の画像を取り込むための一つ又は複数の装置を含むことができる。カメラ２１１は、スチルカメラ及び／又はビデオカメラであってもよい。カメラ２１１は、赤外線カメラを含んでもよい。カメラは、例えば、回転及び／又は傾斜のプラットフォームに取り付けることによって、機械的に移動されてもよい。
【００１７】
センサシステム１１５は、ソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ（例えば、マイクロホン）のようなその他のセンサを更に含むことができる。オーディオセンサは、自動運転車両の周辺環境から音を取得するように配置されてもよい。ステアリングセンサは、ステアリングホイール、車両の車輪又はそれらの組み合わせの操舵角を検知するように配置されてもよい。スロットルセンサ及びブレーキセンサそれぞれは、車両のスロットル位置及びブレーキ位置を検知する。場合によっては、スロットルセンサとブレーキセンサは、統合型スロットル／ブレーキセンサとして集積されてもよい。
【００１８】
実施形態では、車両制御システム１１１は、ステアリングユニット２０１と、スロットルユニット２０２（加速ユニットともいう）と、ブレーキユニット２０３と、駆動ユニット２０４とを含むが、これらに限定されない。ステアリングユニット２０１は、車両の方向又は進行方向を調整するために使用される。スロットルユニット２０２は、モータ又はエンジンの速度を制御するために使用され、モータ又はエンジンの速度によって車両の速度及び加速度を更に制御する。ブレーキユニット２０３は、摩擦を提供することによって車両の車輪又はタイヤを減速させることで車両を減速させる。代替的に、又は追加的に、ブレーキユニット２０３は、電気的（回生）ブレーキ、エンジン圧縮によるブレーキ、エアブレーキ又はＡＤＶを減速させるその他の制御可能なシステムを含んでもよい。駆動ユニット２０４は、自動運転車両の駆動機構を制御する。駆動ユニット２０４は、自動運転車両の前進走行又は後進走行を制御することができる。駆動ユニット２０４の前進方向及び後進方向は、それぞれの通常の意味を有し、即ち、前進方向では、自動運転車両の駆動輪はＡＤＶの前方と理解される方向にＡＤＶを動かす。後進方向では、ＡＤＶの駆動輪は、ＡＤＶの後方と理解される方向にＡＤＶを動かす。実施形態では、駆動ユニット２０４は、車両の変速機の一つ又は複数の駆動ギアから選択することができる。あるいは、ＡＤＶは、自動変速機又は特定の前進ギアの選択を必要としない無段変速機を有することができる。実施形態では、駆動ユニット２０４は、前進方向にも後進方向にもＡＤＶを駆動しない変速機の「駐車」位置を設定することもできる。実施形態では、駆動ユニット２０４は、駐車ブレーキを設定及び解除することもできる。なお、図２に示す構成要素は、ハードウェア、ソフトウェア又はそれらの組み合わせで実現されることができる。
【００１９】
図１を再び参照して、無線通信システム１１２は、自動運転車両１０１と、装置、センサ、その他の車両などの外部システムとの間の通信を可能にするものである。例えば、無線通信システム１１２は、直接又は通信ネットワークを介して一つ又は複数の装置と無線通信することができ、例えば、ネットワーク１０２を介してサーバ１０３〜１０４と通信することができる。無線通信システム１１２は、任意のセルラー通信ネットワーク又は無線ローカルエリアネットワーク（ＷＬＡＮ）を使用することができ、例えば、ＷｉＦｉを使用して他の構成要素又はシステムと通信することができる。無線通信システム１１２は、例えば、赤外線リンク、ブルートゥース（登録商標）などを使用して装置（例えば、乗客のモバイルデバイス、表示装置、車両１０１内のスピーカ）と直接通信することができる。ユーザインターフェースシステム１１３は、車両１０１の内部で実現された周辺装置の部分（例えば、キーボード、タッチスクリーン表示装置、マイクロホン及びスピーカなどを含む）であってもよい。
【００２０】
特に、自動運転モードで動作するとき、自動運転車両１０１の機能の一部又は全部は、感知及び計画システム１１０によって制御又は管理することができる。感知及び計画システム１１０は、必要なハードウェア（例えば、プロセッサ、メモリ、記憶装置）及びソフトウェア（例えば、オペレーティングシステム、計画及びルーティングプログラム）を備え、センサシステム１１５、制御システム１１１、無線通信システム１１２、及び／又はユーザインターフェースシステム１１３から情報を受信し、受信した情報を処理し、出発地から目的地までのルート又は経路を計画し、その後、計画及び制御情報に基づいて車両１０１を運転する。あるいは、感知及び計画システム１１０は車両制御システム１１１と一体に統合されてもよい。
【００２１】
例えば、乗客としてのユーザは、例えば、ユーザインターフェースを介して旅程の出発地位置及び目的地を指定することができる。感知及び計画システム１１０は、旅程関連データを取得する。例えば、感知及び計画システム１１０は、ＭＰＯＩサーバから位置及びルート情報を取得することができ、前記ＭＰＯＩサーバは、サーバ１０３〜１０４の一部であってもよい。位置サーバは、位置サービスを提供し、ＭＰＯＩサーバは、地図サービス及びいくつかの位置のＰＯＩを提供する。あるいは、そのような位置及びＭＰＯＩ情報は、感知及び計画システム１１０の永続性記憶装置にローカルキャッシュされてもよい。
【００２２】
自動運転車両１０１がルートに沿って移動する時、感知及び計画システム１１０は、交通情報システム又はサーバ（ＴＩＳ）からリアルタイムの交通情報を取得することができる。サーバ１０３〜１０４は、第三者エンティティによって動作させてもよいことに注意すべきである。あるいは、サーバ１０３〜１０４の機能は、感知及び計画システム１１０と一体に集積されてもよい。リアルタイム交通情報、ＭＰＯＩ情報、及び位置情報、並びにセンサシステム１１５によって検出又は検知されたリアルタイムローカル環境データ（例えば、障害物、オブジェクト、周辺の車両）に基づいて、感知及び計画システム１１０は、指定された目的地までに安全かつ効率的に到着するように、最適なルートを計画し、計画されたルートに従って、例えば、制御システム１１１によって車両１０１を運転する。最適ルートは、複数の区間を含むことができ、各区間は、感知及び計画システム１１０により当該区間に用いられる複数の候補経路曲線から当該区間のための最適経路曲線を決定することによって最適化することができ、各区間は、何れも感知及び計画システム１１０により生成される。
【００２３】
サーバ１０３は、様々なクライアントのためのデータ解析サービスを行うためのデータ解析システムであってもよい。一実施形態において、データ解析システム１０３は、データコレクタ１２１と機械学習エンジン１２２とを含む。データコレクタ１２１は、様々な車両（自動運転車両又は人間の運転手によって運転される一般車両）から運転統計データ１２３を収集する。運転統計データ１２３は、発行された運転命令（例えば、スロットル、ブレーキ、ステアリングの命令）及び車両のセンサによって異なる時点で捕捉された車両の応答（例えば、速度、加速度、減速度、方向）を指示する情報を含む。運転統計データ１２３は、異なる時点における運転環境を表す情報、例えば、ルート（出発地位置及び目的地位置を含む）、ＭＰＯＩ、道路状況、気候状況などを更に含むことができる。統計データ１２３は、計画モジュール１１０により計画された駐車経路及び選択された駐車経路の成功又は失敗に関する統計データを含むことができる。成功した駐車経路において訓練を行うために、運転統計データ１２３は、機械学習エンジン１２２と共に使用されてもよい。
【００２４】
図３は、一実施形態に係る自動運転車両の感知及び計画システム３００の一例を示すブロック図であり、当該感知及び計画システム３００は、自動運転車両（ＡＤＶ）を駐車する際の駐車軌跡を計画し、障害物を避けるための最適化方法を実施する。システム３００は、図１の自動運転車両１０１の一部として実現することができ、感知及び計画システム１１０と、制御システム１１１と、センサシステム１１５とを含むが、これらに限定されない。図３に示すように、感知及び計画システム１１０は、測位モジュール３０１と、感知モジュール３０２と、予測モジュール３０３と、決定モジュール３０４と、計画モジュール３０５と、制御モジュール３０６と、ルーティングモジュール３０７と、駐車プランナー３０８と、感知／計画インバータ３０９とを含むが、これらに限定されない。測位モジュール３０１は、地図及びルートデータ３１１並びにルーティングモジュール３０７を含んでもよい。
【００２５】
モジュール３０１〜３０９のうちの一部又は全部は、ソフトウェア、ハードウェア又はそれらの組み合わせで実現することができる。例えば、これらのモジュールは、永続性記憶装置３５２にインストールされ、メモリ３５１にロードされ、一つ又は複数のプロセッサ（図示せず）によって実行されてもよい。なお、これらのモジュールの一部又は全部は、図２の車両制御システム１１１のモジュールの一部又は全部と通信可能に接続されるか、又は一体に集積されることができる。モジュール３０１〜３０９のいくつかは、集積モジュールとして一体化されてもよい。
【００２６】
測位モジュール３０１は、自動運転車両３００の現在位置（例えば、ＧＰＳユニット２１２を利用して）を確定し、ユーザの旅程又はルートに関連する如何なるデータを管理する。測位モジュール３０１は、地図及びルートモジュールともいう。ユーザは、例えば、ユーザインターフェースを介してログインし、旅程の出発地位置及び目的地を指定することができる。測位モジュール３０１は、旅程関連データを取得するために、地図及びルート情報３１１のような、自動運転車両３００のその他の構成要素と通信する。例えば、測位モジュール３０１は、位置サーバと、地図及びＰＯＩ（ＭＰＯＩ）サーバから位置及びルート情報を取得することができる。位置サーバは、位置サービスを提供し、ＭＰＯＩサーバは、地図サービス及びいくつかの位置のＰＯＩを提供し、地図及びルート情報３１１の一部としてキャッシュすることができる。自動運転車両３００がルートに沿って移動する時、測位モジュール３０１は、交通情報システム又はサーバからリアルタイムの交通情報を取得することができる。
【００２７】
センサシステム１１５により提供されたセンサデータと測位モジュール３０１により取得された測位情報とに基づいて、感知モジュール３０２は、周囲環境に対する感知を確定する。感知情報は、普通運転手が運転している車両の周辺から感知すべきものを表すことができる。感知は、オブジェクトの形で、例えば、車線配置（例えば、直進車線又はカーブ車線）、信号機信号、他の車両の相対位置、歩行者、建築物、横断歩道又はその他の交通関連標識（例えば、止まれ標識、ゆずれ標識）などを含むことができる。
【００２８】
感知モジュール３０２は、一つ又は複数のカメラによって取り込まれた画像を処理及び解析し、自動運転車両の環境内のオブジェクト及び／又は特徴を認識するためのコンピュータビジョンシステム又はコンピュータビジョンシステムの機能を含むことができる。前記オブジェクトは、交通信号、道路の境界、他の車両、歩行者及び／又は障害物などを含むことができる。コンピュータビジョンシステムは、オブジェクト認識アルゴリズム、ビデオトラッキング及びその他のコンピュータビジョン技術を使うことができる。いくつかの実施形態では、コンピュータビジョンシステムは、環境地図を描き、オブジェクトを追跡し、オブジェクトの速度などを推定することができる。感知モジュール３０２は、例えば、レーダ及び／又はＬＩＤＡＲのようなその他のセンサから提供されたその他のセンタデータに基づいてオブジェクトを検出することができる。
【００２９】
各々のオブジェクトに対して、予測モジュール３０３は、その場合にオブジェクトがどのように挙動するかを予測する。予測は、地図及びルート情報３１１と交通ルール３１２のセットを考慮した時点で運転環境を感知した感知データに基づいて実行される。例えば、オブジェクトは、反対方向の車両であり、かつ現在の運転環境が交差点を含む場合、予測モジュール３０３は、車両が直進するか、又はカーブ走行するかを予測する。感知データは、交差点に信号機がないことを示す場合、予測モジュール３０３は、車両は交差点に進入する前に完全に停止する必要があると予測する可能性がある。感知データは、車両が現在左折専用車線又は右折専用車線にあることを示す場合、予測モジュール３０３は、車両がそれぞれ左折又は右折する可能性がより高いと予測することができる。
【００３０】
各々のオブジェクトに対して、決定モジュール３０４は、オブジェクトをどのように処理するかを決定する。例えば、特定のオブジェクト（例えば、交差ルートにおける他の車両）及びオブジェクトを記述するメタデータ（例えば、速度、方向、操舵角）に対して、決定モジュール３０４は、前記オブジェクトと遇うときに如何に対応するか（例えば、追い越し、道譲り、停止、追い抜き）を決定する。決定モジュール３０４は、永続性記憶装置３５２に記憶可能な、交通ルール又は運転ルール３１２のようなルールセットに従ってそのような決定を下すことができる。
【００３１】
感知されたオブジェクトのそれぞれに対する決定、及び、ルートの運転区間に用いられる複数の候補経路曲線から決定された最小経路曲線に基づいて、計画モジュール３０５は、ルーティングモジュール３０７によって提供された基準線をベースに、自動運転車両に対して経路又はルート並びに運転パラメータ（例えば、距離、速度及び／又は操舵角）を計画する。言い換えれば、特定のオブジェクトに対して、決定モジュール３０４は、当該オブジェクトに対して何をするかを決定し、計画モジュール３０５は、どのようにするかを決定する。例えば、特定のオブジェクトに対して、決定モジュール３０４は、前記オブジェクトを追い抜くかを決定することができ、計画モジュール３０５は、前記オブジェクトを左側から追い抜くか、又は右側から追い抜くかを決定することができる。車両３００が次の移動周期（例えば、次のルート／経路区間）でどのように移動するかを記述する情報を含む計画及び制御データは、計画モジュール３０５によって生成される。例えば、計画及び制御データは、車両３００に時速３０マイル（ｍｐｈ）で１０ｍ移動し、次に２５マイル（ｍｐｈ）で右車線に変更するように指示することができる。
【００３２】
制御モジュール３０６は、計画及び制御データに基づいて、計画及び制御データによって限定されたルート又は経路に応じて、適切なコマンド又は信号を車両制御システム１１１に送信することにより、自動運転車両を制御及び運転する。前記計画及び制御データは、経路又はルートに沿って異なる時点で適切な車両配置又は運転パラメータ（例えば、スロットル、ブレーキ、及びステアリングコマンド）を使用して、車両をルート又は経路の第１の点から第２の点まで運転するのに十分な情報を含む。
【００３３】
一実施形態では、計画段階は、例えば、時間間隔が１００ミリ秒（ｍｓ）の周期など、複数の計画周期（命令周期ともいう）で実行される。計画周期又は命令周期のそれぞれについて、計画及び制御データに基づいて一つ又は複数の制御命令を発行する。即ち、１００ｍｓごとに、計画モジュール３０５は、次のルート区間又は経路区間（例えば、目標位置及びＡＤＶが目標位置に到達するのに必要な時間が含まれる）を計画する。あるいは、計画モジュール３０５は、具体的な速度、方向及び／又は操舵角などを更に指定することができる。一実施形態では、計画モジュール３０５は、次の所定期間（例えば、５秒）のルート区間又は経路区間を計画する。計画周期のそれぞれに対して、計画モジュール３０５は、前の周期で計画された目標位置に基づいて、現在の周期（例えば、次の５秒）のための目標位置を計画する。そして、制御モジュール３０６は、現在の周期の計画及び制御データに基づいて、一つ又は複数の制御コマンド（例えば、スロットル、ブレーキ、ステアリング制御及び駆動ユニットコマンド）を生成する。制御モジュール３０６は、人間の運転手がＡＤＶを制御すると同時にＡＤＶの他のロジックが動作し続けることができるようにバイパスされることができる。
【００３４】
なお、決定モジュール３０４及び計画モジュール３０５は、集積モジュールとして一体化されてもよい。自動運転車両の走行経路を決定するために、決定モジュール３０４／計画モジュール３０５は、ナビゲーションシステム又はナビゲーションシステムの機能を含むことができる。例えば、ナビゲーションシステムは、自動運転車両の以下の経路に沿った移動を達成するための一連の速度及び進行方向を決定することができる。前記経路では、最終的な目的地に通じる走行車線ベースの経路に沿って自動運転車両を進行させる間に、感知された障害物を実質的に回避できる。目的地は、ユーザインターフェースシステム１１３を介したユーザの入力に従って設定することができる。ナビゲーションシステムは、自動運転車両が走行している間に、走行経路を動的に更新することができる。ナビゲーションシステムは、自動運転車両のための走行経路を決定するために、ＧＰＳシステム及び一つ以上の地図からのデータを取り入れることができる。
【００３５】
決定モジュール３０４／計画モジュール３０５は、自動運転車両の環境における潜在的な障害物を認識、評価、回避又は他の方法で通過するための衝突防止システム又は衝突防止システムの機能を含んでもよい。例えば、衝突防止システムは、制御システム１１１の一つ又は複数のサブシステムを動作させて、ステアリング動作、カーブ走行動作、ブレーキ動作などを行うことによって、自動運転車両のナビゲーション中の変更を実現することができる。衝突防止システムは、周辺の交通パターン、道路状況などに基づいて実行可能な障害物回避動作を自動的に決定することができる。衝突防止システムは、他のセンサシステムが、自動運転車両が方向変更して進入しようとする隣接領域における車両、建築障害物などを検出したときに、ステアリング動作を行わないように構成されることができる。衝突防止システムは、自動運転車両の乗員の安全性を最大限にするとともに利用可能な動作を自動的に選択することができる。衝突防止システムは、自動運転車両の客室内で最も少ない加速度を発生させると予測される回避動作を選択することができる。
【００３６】
ルーティングモジュール３０７は、出発地から目的地までの一つ又は複数のルート又は経路を提供するように配置される。出発地位置から目的地位置までの所与の旅程（例えば、ユーザから受信された所与の旅程）について、ルーティングモジュール３０７は、ルート及び地図情報３１１を取得し、出発地位置から目的地位置までの全ての可能なルート又は経路を決定する。ルーティングモジュール３０７は、出発地位置から目的地位置までの各ルートを決定する地形図形態の基準線を生成することができる。基準線とは、例えば、その他の車両、障害物又は交通状況などからの如何なる干渉を受けていない理想的なルート又は経路を指す。すなわち、道路にその他の車両、歩行者又は障害物がない場合、ＡＤＶは、基準線に精確的に又は密接的に従うべきである。そして、地形図は、決定モジュール３０４及び／又は計画モジュール３０５に提供される。決定モジュール３０４及び／又は計画モジュール３０５は、他のモジュールにより提供された他のデータ（例えば、測位モジュール３０１からの交通状况、感知モジュール３０２により感知された運転環境及び予測モジュール３０３により予測された交通状况）に応じて、全ての走行可能なルートを検査して最適ルートのうちの一つを選択及び補正する。その時点における特定の運転環境に応じて、ＡＤＶを制御するための実際のルート又は経路は、ルーティングモジュール３０７によって提供された基準線に近いか又は異なっていてもよい。全ての可能な経路を調べることは、可能な経路から選択された経路について、選択された経路の一つの区間を決定すること、及び選択された経路の当該区間をナビゲートするための複数の候補経路曲線を決定することを含んでもよい。運転区間（又は、「経路」）をナビゲートすることは、ＡＤＶの現在位置からＡＤＶロジックにより選択された駐車スペースまでの駐車経路を決定することを含んでもよい。駐車ロジックは、駐車プランナー３０８において実現することができる。
【００３７】
駐車プランナー３０８は、計画モジュール３０５に組み込むことができ、又はＡＤＶの別個のロジックユニットとして実施することができる。駐車プランナー３０８は、感知及び計画システム１１０のその他のモジュールにアクセスすることができ、例えば、地図及びルート情報３１１、測位モジュール３０１、感知モジュール３０２、予測モジュール３０３並びに感知及び計画システム１１０の他のモジュールが挙げられる。駐車プランナー３０８は、駐車エリアに駐車スペースがあるか否かを判定するために、駐車場のような駐車エリアをスキャンすることができる。駐車プランナー３０８は、駐車場をスキャンする際に地図及びルート情報３１１を用いることができる。駐車プランナー３０８は、一つ又は複数の使用可能なスペースから駐車スペースを選択し、駐車スペースまでの一つ又は複数の駐車経路を生成することができる。
【００３８】
駐車経路をナビゲートする前に、まずは、ＡＤＶを駐車スペース又は駐車エリアの付近に位置決めする近接経路をナビゲートすることによって、駐車専用ロジックを呼び出してＡＤＶを駐車スペースに駐車させることができる。近接経路は、従来のＡＤＶロジックを用いてナビゲートすることができる。駐車経路は、少なくとも第１の部分及び第２の部分を有し、なお、ＡＤＶは、これらの部分において前進方向から後進方向へ変え、又は、後進方向から前進方向へ変える。駐車経路の一部をナビゲートするために、前進方向においては、ＡＤＶの感知及び計画ロジックは、障害物を感知し、障害物の速度、方向及び位置を予測し、ＡＤＶ１０１に用いられる滑らかな基準線を計画することができる。後進方向においては、ＡＤＶ１０１は、障害物を再測位し、速度、方向及び位置を予測することができるように、計画、感知及び予測モジュールの方向を逆にすることができる。感知／計画インバータ３０９を用いて感知モジュール３０２、予測モジュール３０３及び計画モジュール３０５を逆にすることができる。
【００３９】
実施形態では、駐車プランナー３０８は、ＡＤＶ１０１の一つ又は複数の物理的要因（「運動学」）を考慮に入れることができる。例えば、ＡＤＶ１０１は、後進方向に走行する際に、ステアリング機能を実行する車輪がＡＤＶの相対的な端部に位置することができるので、ＡＤＶをどのように制御するか、及び、ＡＤＶを基準経路に沿ってどのようにナビゲートするかに僅かな変化を引き起こす。ステアリングジオメトリ、ブレーキ、加速度、サスペンション、重量配分、変速比及びその他の物理的要因は、後進走行及び前進走行中の車両の制御に影響を与える可能性がある。駐車プランナー３０８は、前進走行と後進走行との間のこれらの運動学的差異を、ＡＤＶの現在位置から選択された駐車スペースまでナビゲートするために解決される駐車問題に対する制約として説明することができる。
【００４０】
駐車プランナー３０８は、ＡＤＶの現在位置から選択された駐車スペースまでの複数の駐車経路を決定することができる。ジグザグ方法を用いて操舵角、ＡＤＶの長さ及び幅並びにＡＤＶから選択された駐車スペースまでの距離及び方向の制限を考慮して駐車経路を決定する。最初に、ＡＤＶの付近に存在可能な如何なる障害物を考慮せずに駐車経路を生成することができる。それぞれの駐車経路は、何れも駐車経路を構成する一つ又は複数の区間を有することができる。各区間は、駐車経路内の区間のコストの合計を求めることで当該駐車経路と関連付けることができるような関連コストを有する。区間のコスト要因は、当該区間を通過する時間及び距離、当該区間をナビゲートするのに必要な操舵角又は当該区間を通過するのに必要な加速度、ブレーキ又は速度の量を含んでもよい。駐車プランナー３０８は、ＡＤＶの周辺の障害物を考慮せずに生成された複数の駐車経路のうちコストの最も低い一つ又は複数の候補経路を選択することができる。そして、ＡＤＶの周辺の障害物を考慮するとき、ＡＤＶの経路の区間に沿った障害物と衝突するか又は障害物に近すぎる経路の区間に基づいて候補経路のうちの一つ又は複数を排除することができる。残りの候補経路から、駐車プランナー３０８は、ＡＤＶを選択された駐車スペースにナビゲートするための駐車経路を選択することができる。ＡＤＶの計画モジュールは、ＡＤＶをＡＤＶの現在位置から選択された駐車スペースまでナビゲートするために、選択された経路に対応する基準経路を生成することができる。一つ又は複数の候補経路が排除された後、ＡＤＶを駐車するための選択可能な候補経路が残っていなければ、一つ又は複数の駐車制約を自動的に緩和し、新たな複数の駐車経路を生成することができ、それぞれのコストを確定し、一つ又は複数の候補経路を選択し、候補経路に沿って存在する障害物に基づいて一つ又は複数の候補経路を排除し、残りの経路から駐車経路を選択することができる。これらの計算プロセスは、ＡＤＶを選択された駐車スペースにナビゲートするための適切な経路を見つけるために当該プロセスを数回繰り返すことができるほど十分に軽い。
【００４１】
感知及び計画インバータ３０９は、ＡＤＶ１０１の走行方向に基づいて感知モジュール３０２、予測モジュール３０３及び計画モジュール３０５の配向及び動作を論理反転することができる。本開示の有益な効果は、駐車中にＡＤＶの感知モジュール、予測モジュール及び計画モジュールを使用できることである。駐車は、通常に駐車経路の少なくとも一部で後進走行を求める。ＡＤＶの前進方向ロジックの感知モジュール、予測モジュール及び計画モジュールは、論理反転して後進走行に利用することができる。例えば、ＡＤＶが前進走行する場合、ＡＤＶの右前方にある障害物は、ＡＤＶが後進モードで走行する時に、ＡＤＶの左後方に位置する。同じオブジェクトが前進方向でＡＤＶに近づいているとしたら、ＡＤＶが障害物に向かって走行しているか、又は障害物がＡＤＶに近づいているか、又はその両方の場合、ＡＤＶが後進走行すると、障害物がＡＤＶから後退し、まだ依然としてＡＤＶに近づいているが、ＡＤＶが後進方向に動いているので、もっとゆっくり、又は動いていないように見える。従って、ＡＤＶの感知、予測及び計画のロジックは、障害物を検出してそれらの位置、方向及び速度を予測するために、前進走行及び後進走行の両者に利用することができる。これを実現するために、ＡＤＶの方向の変化を考慮し、感知、予測及び計画は、論理反転する必要がある。実施形態では、感知、予測及び計画モジュールを反転することは、モジュールの配向を１８０°論理回転させることを含むことができる。
【００４２】
なお、以上に例示及び説明された構成要素の一部又は全ては、ソフトウェア、ハードウェア、又はそれらの組み合わせで実現されることができる。例えば、このような構成要素は、永続性記憶装置にインストールされるとともに記憶されるソフトウェアとして実現されてもよく、前記ソフトウェアは、本願にわたって記載されたプロセッサ又は動作を実現するように、プロセッサ（図示せず）によってメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路（例えば、特定用途向け集積回路又はＡＳＩＣ）、デジタルシグナルプロセッサ（ＤＳＰ）、又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ）のような専用ハードウェアにプログラミング又は埋め込まれた実行可能なコードとして実現されてもよく、前記実行可能なコードは、アプリケーションからの対応するドライバー及び／又はオペレーティングシステムを介してアクセスすることができる。また、このような構成要素は、ソフトウェア構成要素が一つ以上の特定の命令によってアクセス可能な命令セットの一部として、プロセッサ又はプロセッサコアにおける特定のハードウェアロジックとして実現されることができる。
【００４３】
図４Ａは、一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。
【００４４】
図４Ａにおいては、ＡＤＶ１０１は、駐車スペースＳ1〜Ｓ6（Ｓ1、…、Ｓ6）を含む駐車場４０５に既に接近して入った。駐車場４０５は、歩行者用出口４１０を更に有する。駐車スペースＳ1、Ｓ4、Ｓ5及びＳ6は、駐車中の車１０５を示している。駐車スペースＳ2及びＳ3は、使用可能である。ＡＤＶ１０１が駐車場４０５に接近しているとき、ＡＤＶ１０１は、高解像度の地図及びＡＤＶのセンサを用いて駐車スペースのＳ1及びＳ4〜Ｓ6が占用されていること、駐車スペースＳ2及びＳ3が利用可能であること、並びに使用可能な駐車スペースの位置を確定することができる。ＡＤＶ１０１は、ＡＤＶ１０１の駐車場４０５における位置を更に確定することができる。ＡＤＶ１０１は、高解像度の地図及びＡＤＶ１０１のセンサを用いて、駐車スペースＳ3までの潜在的な駐車経路を決定するための制約として、駐車場４０５、駐車スペースＳ3及びＡＤＶ１０１の位置を含む駐車問題を形成することができる。ＡＤＶ１０１は、駐車問題を定義する際にＡＤＶ１０１の運動学的制約を使用することもできる。ＡＤＶ１０１の運動学的制約は、例えば、ＡＤＶ１０１のサイズ、ＡＤＶ１０１の最高速度及び／又は加速度、ＡＤＶ１０１の重量、ＡＤＶ１０１の最大操舵角及びＡＤＶ１０１のブレーキ能力を含んでもよい。その他の運動学的制約を使用してもよい。最初の駐車問題は、ＡＤＶ１０１の周辺の障害物を考慮しない。
【００４５】
ＡＤＶを囲む障害物を考慮せず、駐車場制約、駐車スペース制約及びＡＤＶ１０１の運動学的制約を考慮し、ＡＤＶ１０１は、複数の駐車経路を生成することができ、これらの駐車経路は、ＡＤＶ１０１を、その現在位置から選択された駐車スペースＳ3までナビゲートする駐車問題の潜在的な解決案である。図４Ａにおいては、ＡＤＶ１０１の駐車プランナー３０８は、標識が１、２及び３である３つの例示的な駐車経路を生成した。ＡＤＶ１０１は、任意の数の駐車経路を生成することができる。説明の便宜上、図４Ａは、３つの例だけを示す。駐車経路１を点線で示し、駐車経路２を破線で示し、そして駐車経路３を一点鎖線で示す。駐車場４０５の下方の表に示すように、それぞれの駐車経路は、何れも複数の区間を有してもよい。それぞれの駐車経路の区間は、何れもコスト要素ｃi，jを有してもよく、ただし、ｉは、駐車経路の番号であり、ｊは、駐車経路ｉの区間の番号である。それぞれの駐車経路の区間のコスト要素ｃi，jは、何れもコスト値を有してもよい。駐車経路における区間のコスト値の合計は、当該駐車経路のコストである。コストは、当該区間を通過する速度及び時間、駐車スペースからの距離、当該区間をナビゲートするのに必要な操舵角、又は、ＡＤＶ１０１の運動学的要因を含む他の要因を含む定数要因によって決定することができる。ＡＤＶ１０１は、複数の経路１〜３のうちのコストの最も低い一つ又は複数の候補経路を選択することができる。例示においては、ＡＤＶ１０１は、経路１に比べて、コストの最も低い候補経路として経路２及び３を選択することができる。
【００４６】
図４Ｂは、一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。図４Ｂにおいては、ＡＤＶ１０１は、現在障害物Ｏ1、Ｏ2、及びＯ3のようなＡＤＶ１０１を囲む障害物を考慮することができる。それぞれの障害物は、何れも駐車場４０５に対する当該障害物の位置を示す制約を有することができる。
【００４７】
駐車場４０５は、駐車場４０５の左下角に原点（０，０）を有する格子で示されている。障害物制約は、駐車場４０５の格子に対する境界線として表すことができる。それぞれの障害物Ｏ1、…、Ｏ3及び駐車スペースＳ1、…、Ｓ6の境界線は、図４Ｂにおける駐車場４０５の下方の表に示されている。
【００４８】
図４Ａに示す駐車経路１は、コストの最も低い駐車経路の一つではないので、考慮する範囲から排除された。よって、複数の駐車経路のうちの候補経路は、現在図４Ｂに示す駐車経路２及び３に限られ、障害物Ｏ1、…、Ｏ3に基づいて候補経路２及び３を考慮する。それぞれの障害物Ｏ1、…、Ｏ3は、何れも障害物に関連する軌跡を更に有してもよく、当該軌跡は、ＡＤＶ１０１の予測モジュールによって確定された障害物の方向及び速度を示す矢印を伴う破線で示される。図４Ｂに示すように、それぞれの障害物Ｏ1、…、Ｏ3は、何れも歩行者が使用しようとする出口４１０に向かう方向及び速度を有する。実施形態では、ＡＤＶ１０１の駐車プランナー３０８は、感知及び予測モジュールと対話して  障害物の制約を拡大することで、ＡＤＶ１０１が駐車経路を選択された駐車スペースにナビゲートするときに障害物の予測方向及び速度を考慮に入れることができる。ＡＤＶ１０１は、候補経路２及び３が同様のコストを有することを確定することができる。図４Ａのコスト表を参照する。しかしながら、障害物Ｏ2の制約及びＡＤＶ１０１の運動学的制約を考慮し、経路３は、障害物Ｏ2と衝突するように見える。具体的には、この場合、ＡＤＶ１０１の幅の運動学的制約は、候補駐車経路３の第２の区間において障害物Ｏ2と衝突するように見える。これにより、候補駐車経路から候補駐車経路３を排除することができる。障害物Ｏ3は、予測速度及び方向を有し、候補駐車経路２と交差するが、直接的に衝突しない。障害物Ｏ3の予測速度及び方向、及びＯ3とＡＤＶ１０１の制約に基づき、ＡＤＶ１０１ロジックは、ＡＤＶ１０１が障害物Ｏ3の現在位置に到達する時に、障害物Ｏ3が候補経路２においてＡＤＶ１０１と衝突しないことを予測することができる。実施形態では、それぞれの候補経路について、ＡＤＶ１０１に対する運動学的制約、駐車場４０５に対する制約、駐車スペースＳ3に対する制約及び障害物Ｏ1、…、Ｏ3を含む駐車問題は、二次最適化システムに送信して処理することによって、ＡＤＶ１０１が選択するために経路２及び３のうち経路２が最適な選択であることを決定することができる。
【００４９】
図４Ｃは、一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。図４Ｃにおいては、ＡＤＶ１０１をその現在位置から駐車スペースＳ3にナビゲートするために候補駐車経路２が選択されている。候補駐車経路２は、ＡＤＶ１０１の計画モジュールにより処理されることによって、ＡＤＶ１０１をＡＤＶ１０１の現在位置から駐車スペースＳ3までナビゲートする基準線を生成することができる。基準線２は、計画モジュールによって平滑化されている。
【００５０】
図５は、実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法５００を示すブロック図である。
【００５１】
動作５０５においては、駐車プランナー３０８は、駐車場（例えば、駐車場４０５）及び選択された駐車スペース（例えば、駐車スペースＳ3）に対する複数の制約を確定することによって、ＡＤＶ１０１を選択された駐車スペースに駐車するための駐車問題を定義することができる。
【００５２】
動作５１０においては、選択された駐車スペース及び駐車場に対する複数の駐車スペース制約に少なくとも部分的に基づいて、駐車プランナー３０８は、ＡＤＶ１０１の現在位置から選択された駐車スペースまでの複数の駐車経路を決定することができる。実施形態では、更に、ＡＤＶ１０１の最大操舵角、最大加速度及び速度能力、ＡＤＶ１０１の重量、幅及び長さなど、ＡＤＶ１０１の運動学的制約を用いて複数の停車経路を決定することができる。ＡＤＶ１０１の周辺の一つ又は複数の障害物を考慮せずに複数の駐車経路を生成する。
【００５３】
動作５１５においては、駐車プランナー３０８は、それぞれ一つ又は複数の区間を有する複数の駐車経路のそれぞれのコストを確定することができる。駐車経路の各々の区間は、関連するコストを有することができる。駐車経路のコストは、当該駐車経路の各区間のコストの合計として確定することができる。区間のコスト要因は、通過した区間の距離、時間及び速度、当該区間をナビゲートするのに必要な操舵角、例えば、前進方向から後進方向への変更及び／又は後進方向から前進方向への変更など、当該区間を通過するために方向を変える必要があるか否かなどのことを含んでもよい。
【００５４】
動作５２０においては、駐車プランナー３０８は、複数の駐車経路のうちのコストの最も低い一つ又は複数の候補駐車経路を選択することができる。実施形態では、駐車プランナー３０８は、固定数の最低コストを有する候補駐車経路又は複数の駐車経路のうちのコストの最も低い、１０％のような閾値数百分率の駐車経路を選択することができる。ＡＤＶ１０１の周辺の一つ又は複数の障害物を考慮せずに候補駐車経路の選択を行う。
【００５５】
動作５２５においては、駐車プランナー３０８は、ＡＤＶ１０１の周辺の、ＡＤＶの感知モジュールにより検出された、予測モジュールにより予測された方向及び速度を有する一つ又は複数の障害物を考慮することができる。駐車プランナー３０８は、障害物又は障害物の予測位置に基づいて候補駐車経路の区間と衝突する候補駐車経路のうちの一つ又は複数を排除することができる。実施形態では、駐車場制約、駐車スペース制約及び障害物制約をアフィン集合として表し、ＡＤＶ１０１の運動学的制約と共に二次最適化システムに送ることによって、候補経路を維持するか又は削除するかを判定する。
【００５６】
動作５３０においては、駐車プランナー３０８は、残りの候補駐車経路から最適な候補駐車経路を選択することができる。
【００５７】
動作５３５においては、ＡＤＶの計画モジュールは、ＡＤＶの現在位置から選択された駐車スペースまでナビゲートするために用いられるＡＤＶのための基準線を生成することができる。
【００５８】
動作５４０においては、ＡＤＶは、生成された基準線を用いて、ＡＤＶ１０１の現在位置から選択された駐車スペースまでナビゲートすることができる。
【００５９】
図６は、実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法６００を示すブロック図である。
【００６０】
動作６０５においては、ＡＤＶ１０１は、駐車場（例えば、駐車場４０５）を測位し、駐車場から駐車スペースを選択し、例えば、図４Ａ〜図４Ｃの駐車スペースＳ3を選択する。ＡＤＶ１０１は、感知モジュールの高解像度地図及び車載センサを用いて駐車場の存在及び位置並びに駐車場における開放的な駐車スペースの有用性を確定することができる。
【００６１】
動作６１０においては、駐車場制約、駐車スペース制約、ＡＤＶ１０１の駐車場内における現在位置及び配向、並びにＡＤＶ１０１の運動学的制約に基づいて、ＡＤＶ１０１の駐車プランナー３０８は、ＡＤＶ１０１を選択された駐車スペースに駐車する駐車問題を形成する。運動学的制約は、ＡＤＶの長さ、幅及び重量、ＡＤＶ１０１の前進走行方向及び後進走行方向の最大操舵角、ＡＤＶの最大加速度及び速度能力、ＡＤＶの制動距離能力を含んでもよい。
【００６２】
動作６１５においては、ＡＤＶの周辺に存在可能な任意の障害物を考慮せず、駐車場、駐車スペース及びＡＤＶ１０１の運動学的制約を考慮し、ＡＤＶ１０１の駐車プランナー３０８は、ＡＤＶの現在位置から駐車スペースまでの複数の駐車経路を生成することができる。駐車経路のそれぞれは、一つ又は複数の区間を含んでもよい。駐車経路の各区間は、関連するコストを有する。駐車経路のコストは、当該駐車経路における区間のコストの合計であってもよい。駐車経路の区間のコスト要因は、駐車経路の長さ、当該区間を通過する時間及び／又は速度、当該区間を通過するために必要とされる操舵角、及び、当該駐車経路の区間を通過する速度に応じて必要とされ得る制動を含んでもよい。
【００６３】
動作６２０においては、ＡＤＶ１０１の駐車プランナー３０８は、複数の駐車経路のうちのコストの最も低い一つ又は複数の候補駐車経路を選択する。
【００６４】
動作６２５においては、ＡＤＶ１０１の駐車プランナー３０８は、現在ＡＤＶ１０１の周辺の一つ又は複数の障害物を考慮することができる。それぞれの障害物は、障害物のサイズ及び位置を示す一組の制約を有する。予測モジュールは、各障害物の方向及び速度を予測することができる。実施形態では、それぞれの候補駐車経路について、駐車場、駐車スペース及び障害物に対する制約は、二次最適化モジュールに送ることによって、候補駐車経路が依然として候補であるか又は排除されるかを決定する。動作６２５においては、二次最適化分析に基づいて、及び／又は現在位置又は予測位置の障害物と候補駐車経路の区間との衝突を判断することに基づいて、ＡＤＶ１０１の駐車プランナー３０８は、候補駐車経路のうちの一つ又は複数を排除することができる。
【００６５】
動作６３０においては、ＡＤＶ１０１の駐車プランナー３０８は、残りの候補駐車経路から適切な駐車経路を選択できるか否かを判定することができる。そうであれば、方法６００は動作６３５に進み、そうでなければ方法６００は動作６４０に進む。
【００６６】
動作６３５においては、ＡＤＶは、残りの候補駐車経路から最適な駐車経路を選択する。ＡＤＶ１０１の感知及び計画モジュールは、ＡＤＶ１０１の現在位置から選択された駐車スペースまでナビゲートするために用いられるＡＤＶ１０１のための基準線を生成することができる。そして、ＡＤＶ１０１は、基準線に従ってＡＤＶ１０１の現在位置から選択された駐車スペースまでナビゲートし、方法６００は、終了する。
【００６７】
動作６４０においては、ＡＤＶ１０１の駐車プランナー３０８は、ＡＤＶ１０１の駐車問題を解決するための制約のうちの一つ又は複数を自動的に緩和することができる。制約は、駐車場制約、駐車スペース制約、ＡＤＶの運動学的制約（ＡＤＶ１０１と障害物の間の確定された距離を含む）又は障害物制約を含んでもよい。そして、方法６００は、動作６１５において再開し、動作６１５において、ＡＤＶ１０１の駐車プランナー３０８は、駐車問題に対する制約を形成し、動作６１５の駐車問題において考慮されていない障害物の制約を除いた制約を考慮に入れる複数の駐車経路を生成する。
【００６８】
図７は、本開示の一実施形態と共に使用可能なデータ処理システムの一例を示すブロック図である。例えば、システム１５００は、前記プロセス又は方法のいずれかを実行する前記データ処理システムのいずれか（例えば、図１の感知及び計画システム１１０、又はサーバ１０３〜１０４のいずれか）を表すことができる。システム１５００は、いくつかの異なる構成要素を含んでもよい。これらの構成要素は、集積回路（ＩＣ）、集積回路の一部、ディスクリート型電子デバイス、又は回路基板（例えば、コンピュータシステムのマザーボード若しくはアドインカード）に適するその他のモジュールとして実現されることができ、又は、他の形態でコンピュータシステムのシャーシ内に組み込まれる構成要素として実現されることができる。
【００６９】
なお、システム１５００は、コンピュータシステムのいくつかの構成要素の高レベルビューを示すことを意図している。しかしながら、理解すべきなのは、特定の実施例において付加的構成要素が存在してもよく、また、その他の実施例において示された構成要素を異なる配置にすることが可能である。システム１５００は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレヤー、パーソナルデジタルアシスタント（ＰＤＡ）、スマートウォッチ、パーソナルコミュニケーター、ゲーム装置、ネットワークルーター又はハブ、無線アクセスポイント（ＡＰ）又はリピーター、セット・トップボックス、又はそれらの組み合わせを表すことができる。また、単一の機械又はシステムのみが示されたが、「機械」又は「システム」という用語は、本明細書で説明されるいずれか一種以上の方法を実現するための、単独で又は共同で１つ（又は複数）の命令セットを実行する機械又はシステムのいずれかの組み合わせも含まれると解釈されるものとする。
【００７０】
一実施形態では、システム１５００は、バス又はインターコネクト１５１０を介して接続される、プロセッサ１５０１と、メモリ１５０３と、装置１５０５〜１５０８とを含む。プロセッサ１５０１は、単一のプロセッサコア又は複数のプロセッサコアが含まれる単一のプロセッサ又は複数のプロセッサを表すことができる。プロセッサ１５０１は、マイクロプロセッサ、中央処理装置（ＣＰＵ）などのような、一つ以上の汎用プロセッサを表すことができる。より具体的には、プロセッサ１５０１は、複雑命令セットコンピューティング（ＣＩＳＣ）マイクロプロセッサ、縮小命令セットコンピューティング（ＲＩＳＣ）マイクロプロセッサ、超長命令語（ＶＬＩＷ）マイクロプロセッサ、又はその他の命令セットを実行するプロセッサ、又は命令セットの組み合わせを実行するプロセッサであってもよい。プロセッサ１５０１は更に、例えば、特定用途向け集積回路（ＡＳＩＣ）、セルラー又はベースバンドプロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタルシグナルプロセッサ（ＤＳＰ）、ネットワークプロセッサ、グラフィックプロセッサ、通信プロセッサ、暗号化プロセッサ、コプロセッサ、組込みプロセッサ、又は命令を処理可能な任意の他のタイプのロジックのような、一つ以上の専用プロセッサであってもよい。
【００７１】
プロセッサ１５０１は、超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよく、前記システムの様々な構成要素と通信するための主処理ユニット及び中央ハブとして機能することができる。このようなプロセッサは、システムオンチップ（ＳｏＣ）として実現されることができる。プロセッサ１５０１は、本明細書で説明される動作及びステップを実行するための命令を実行するように構成される。システム１５００は、更に所望によるグラフィックサブシステム１５０４と通信するグラフィックインターフェースを含むことができ、グラフィックサブシステム１５０４は、表示コントローラ、グラフィックプロセッサ、及び／又は表示装置を含むことができる。
【００７２】
プロセッサ１５０１は、メモリ１５０３と通信することができ、メモリ１５０３は、一実施形態では、所定量のシステムメモリを提供するための複数のメモリ装置によって実現されることができる。メモリ１５０３は、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、又はその他のタイプの記憶装置のような、一つ以上の揮発性記憶（又はメモリ）装置を含むことができる。メモリ１５０３は、プロセッサ１５０１又はその他の任意の装置により実行される命令シーケンスを含む情報を記憶することができる。例えば、様々なオペレーティングシステム、デバイスドライバ、ファームウェア（例えば、ベーシックインプット／アウトプットシステム又はＢＩＯＳ）、及び／又はアプリケーションの実行可能なコード及び／又はデータは、メモリ１５０３にロードされ、プロセッサ１５０１により実行されることができる。オペレーティングシステムは、例えば、ロボットオペレーティングシステム（ＲＯＳ）、Ｍｉｃｒｏｓｏｆｔ（登録商標）社のＷｉｎｄｏｗｓ（登録商標）オペレーティングシステム、アップル社のＭａｃＯＳ（登録商標）／ｉＯＳ（登録商標）、Ｇｏｏｇｌｅ（登録商標）社のＡｎｄｒｏｉｄ（登録商標）、ＬＩＮＵＸ（登録商標）、ＵＮＩＸ（登録商標）、又はその他のリアルタイム若しくは組込みオペレーティングシステムのような、任意のタイプのオペレーティングシステムであってもよい。
【００７３】
システム１５００は、更に、ネットワークインターフェース装置１５０５、所望による入力装置１５０６、及びその他の所望によるＩ／Ｏ装置１５０７を含む装置１５０５〜１５０８のようなＩ／Ｏ装置を含むことができる。ネットワークインターフェース装置１５０５は、無線送受信機及び／又はネットワークインターフェースカード（ＮＩＣ）を含むことができる。前記無線送受信機は、ＷｉＦｉ送受信機、赤外線送受信機、ブルートゥース送受信機、ＷｉＭａｘ送受信機、無線携帯電話送受信機、衛星送受信機（例えば、全地球測位システム（ＧＰＳ）送受信機）、又はその他の無線周波数（ＲＦ）送受信機、又はそれらの組み合わせであってもよい。ＮＩＣは、イーサネット（登録商標）カードであってもよい。
【００７４】
入力装置１５０６は、マウス、タッチパネル、タッチスクリーン（表示装置１５０４と統合されてもよい）、ポインター装置（例えば、スタイラス）、及び／又はキーボード（例えば、物理キーボード又はタッチスクリーンの一部として表示された仮想キーボード）を含むことができる。例えば、入力装置１５０６は、タッチスクリーンと接続するタッチスクリーンコントローラを含むことができる。タッチスクリーン及びタッチスクリーンコントローラは、例えば、様々なタッチ感応技術（コンデンサ、抵抗、赤外線、及び表面弾性波の技術を含むが、それらに限定されない）のいずれか、並びにその他の近接センサアレイ、又は、タッチスクリーンと接触する一つ以上の点を決定するためのその他の素子を用いて、それらの接触及び移動又は間欠を検出することができる。
【００７５】
Ｉ／Ｏ装置１５０７は、音声装置を含むことができる。音声装置は、音声認識、音声複製、デジタル記録、及び／又は電話機能のような音声サポート機能を促進するために、スピーカ及び／又はマイクロホンを含んでもよい。その他のＩ／Ｏ装置１５０７は、更に、ユニバーサルシリアルバス（ＵＳＢ）ポート、パラレルポート、シリアルポート、プリンタ、ネットワークインターフェース、バスブリッジ（例えば、ＰＣＩ−ＰＣＩブリッジ）、センサ（例えば、加速度計のようなモーションセンサ、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサなど）、又はそれらの組み合わせを含むことができる。装置１５０７は、更に結像処理サブシステム（例えば、カメラ）を含むことができ、前記結像処理サブシステムは、写真及びビデオ断片の記録のようなカメラ機能を促進するための、電荷結合素子（ＣＣＤ）又は相補型金属酸化物半導体（ＣＭＯＳ）光学センサのような光学センサを含むことができる。いくつかのセンサは、センサハブ（図示せず）を介してインターコネクト１５１０に接続されることができ、キーボード又はサーマルセンサのようなその他の装置はシステム１５００の具体的な配置又は設計により、組込みコントローラ（図示せず）により制御されることができる。
【００７６】
データ、アプリケーション、一つ以上のオペレーティングシステムなどの情報の永続性記憶を提供するために、プロセッサ１５０１には、大容量記憶装置（図示せず）が接続されることができる。様々な実施形態において、より薄くてより軽量なシステム設計を可能にしながら、システムの応答性を向上するために、このような大容量記憶装置は、ソリッドステート装置（ＳＳＤ）によって実現されることができる。しかしながら、その他の実施形態において、大容量記憶装置は、主にハードディスクドライブ（ＨＤＤ）を使用して実現することができ、より小さい容量のＳＳＤ記憶装置をＳＳＤキャッシュとして機能することで、停電イベントの間にコンテキスト状態及び他のそのような情報の不揮発性記憶を可能にし、それによりシステム動作が再開するときに通電を速く実現することができる。また、フラッシュデバイスは、例えば、シリアルペリフェラルインターフェース（ＳＰＩ）を介してプロセッサ１５０１に接続されることができる。このようなフラッシュデバイスは、前記システムのＢＩＯＳ及びその他のファームウェアを含むシステムソフトウェアの不揮発性記憶のために機能することができる。
【００７７】
記憶装置１５０８は、コンピュータアクセス可能な記憶媒体１５０９（機械可読記憶媒体又はコンピュータ可読媒体ともいう）を含むことができ、前記コンピュータアクセス可能な記憶媒体１５０９には、本明細書で記載されたいずれか一種以上の方法又は機能を具現化する一つ以上の命令セット又はソフトウェア（例えば、モジュール、ユニット、及び／又はロジック１５２８）が記憶されている。処理モジュール／ユニット／ロジック１５２８は、例えば、計画モジュール３０５、制御モジュール３０６、及び／又は駐車計画モジュール３０８並びに感知／計画インバータ３０９のような、前記構成要素のいずれかを表すことができる。処理モジュール／ユニット／ロジック１５２８は、更に、データ処理システム１５００、メモリ１５０３、及びプロセッサ１５０１による実行中に、メモリ１５０３内及び／又はプロセッサ１５０１内に完全的に又は少なくとも部分的に存在してもよく、データ処理システム１５００、メモリ１５０３、及びプロセッサ１５０１も機械アクセス可能な記憶媒体を構成する。処理モジュール／ユニット／ロジック１５２８は、更に、ネットワークによってネットワークインターフェース装置１５０５を経由して送受信されてもよい。
【００７８】
コンピュータ可読記憶媒体１５０９は、以上に説明されたいくつかのソフトウェア機能を永続的に記憶するために用いることができる。コンピュータ可読記憶媒体１５０９は、例示的な実施形態において単一の媒体として示されるが、「コンピュータ可読記憶媒体」という用語は、前記一つ以上の命令セットが記憶される単一の媒体又は複数の媒体（例えば、集中型又は分散型データベース、及び／又は関連するキャッシュとサーバ）を含むと解釈されるものとする。「コンピュータ可読記憶媒体」という用語は、更に、命令セットを記憶又は符号化できる任意の媒体を含むと解釈されるものであり、前記命令セットは機械により実行され、本開示のいずれか一種以上の方法を前記機械に実行させるためのものである。それゆえに、「コンピュータ可読記憶媒体」という用語は、ソリッドステートメモリ、光学媒体及び磁気媒体、又はその他の任意の非一時的な機械可読媒体を含むが、それらに限定されないと解釈されるものとする。
【００７９】
本明細書に記載の処理モジュール／ユニット／ロジック１５２８、構成要素及びその他の特徴は、ディスクリートハードウェア構成要素として実現されてもよく、又はハードウェア構成要素（例えば、ＡＳＩＣＳ、ＦＰＧＡ、ＤＳＰ又は類似の装置）の機能に統合されてもよい。また、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置におけるファームウェア又は機能性回路として実現されてもよい。また、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置とソフトウェア構成要素の任意の組み合わせで実現されてもよい。
【００８０】
なお、システム１５００は、データ処理システムの様々な構成要素を有するものとして示されているが、構成要素を相互接続する任意の特定のアーキテクチャ又は方式を表すことを意図するものではなく、そのような詳細は、本開示の実施形態と密接な関係がない。また、より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ、及び／又はその他のデータ処理システムも、本開示の実施形態と共に使用することができることを理解されたい。
【００８１】
前記具体的な説明の一部は、既に、コンピュータメモリにおけるデータビットに対する演算のアルゴリズムと記号表現で示される。これらのアルゴリズムの説明及び表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。本明細書では、一般的に、アルゴリズムは、所望の結果につながるセルフコンシステントシーケンスと考えられる。これらの動作は、物理量の物理的処置が必要なものである。
【００８２】
しかしながら、念頭に置くべきなのは、これらの用語及び類似の用語の全ては、適切な物理量に関連付けられるものであり、これらの量を標識しやすくするためのものに過ぎない。以上の説明で他に明示的に記載されていない限り、本明細書の全体にわたって理解すべきなのは、用語（例えば、添付された特許請求の範囲に記載のもの）による説明とは、コンピュータシステム、又は類似の電子式計算装置の動作又はプロセスを指し、前記コンピュータシステム又は電子式計算装置は、コンピュータシステムのレジスタ及びメモリにおける物理（電子）量として示されたデータを制御するとともに、前記データをコンピュータシステムメモリ又はレジスタ又はこのようなその他の情報記憶装置、伝送又は表示装置において同様に物理量として示された別のデータに変換する。
【００８３】
本開示の実施形態は、本明細書の動作を実行するための装置にも関する。このようなコンピュータプログラムは、非一時的なコンピュータ可読媒体に記憶される。機械可読媒体は、機械（例えば、コンピュータ）により読み取り可能な形式で情報を記憶するための任意のメカニズムを含む。例えば、機械可読（例えば、コンピュータ可読）媒体は、機械（例えば、コンピュータ）可読記憶媒体（例えば、読み出し専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリ装置）を含む。
【００８４】
上述した図面において説明されたプロセス又は方法は、ハードウェア（例えば、回路、専用ロジックなど）、ソフトウェア（例えば、非一時的なコンピュータ可読媒体に具現化されるもの）、又は両方の組み合わせを含む処理ロジックにより実行されることができる。前記プロセス又は方法は、以上で特定の順序に応じて説明されたが、前記動作の一部が異なる順序で実行されてもよいことを理解されたい。また、一部の動作は、順番ではなく並行して実行されてもよい。
【００８５】
本開示の実施形態は、いずれの特定のプログラミング言語を参照することなく記載されている。理解すべきなのは、本明細書に記載の本開示の実施形態の教示を実現するために、様々なプログラミング言語を使用することができる。
【００８６】
前記明細書において、本開示の実施形態は、既にその具体的な例示的な実施形態を参照しながら記載された。明らかなように、添付された特許請求の範囲に記載された本開示のより広い趣旨及び範囲を逸脱しない限り、本発明に対して様々な変更を行うことができる。それゆえに、本明細書及び図面は、限定的な意味でなく、例示的な意味で理解されるべきである。
【図１】
2020001677.tif 000003
【図２】
2020001677.tif 000004
【図３】
2020001677.tif 000005
【図４Ａ】
2020001677.tif 000006
【図４Ｂ】
2020001677.tif 000007
【図４Ｃ】
2020001677.tif 000008
【図５】
2020001677.tif 000009
【図６】
2020001677.tif 000010
【図７】
2020001677.tif 000011
【手続補正書】
【提出日】平成31年3月13日(2019.3.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
自動運転車両を駐車するためのコンピュータ実施方法であって、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップと、を含む、
自動運転車両を駐車するためのコンピュータ実施方法。
【請求項２】
前記複数の駐車経路のそれぞれが１つ又は複数の区間を含み、前記１つ又は複数の区間のそれぞれがコストを有し、前記駐車経路における前記区間のコストに少なくとも部分的に基づいて駐車経路のコストを確定するステップを更に含む、
請求項１に記載の方法。
【請求項３】
前記自動運転車両の複数の運動学的制約を確定し、前記自動運転車両の前記複数の運動学的制約に少なくとも部分的に基づいて前記複数の駐車経路を決定する、
請求項１に記載の方法。
【請求項４】
前記複数の運動学的制約は、前記自動運転車両の長さ、前記自動運転車両の幅、前記自動運転車両の最大操舵角、前記自動運転車両の最大加速度又は減速度、前記自動運転車両の最高速度又は最低速度、及び前記自動運転車両が前進モードと後進モードのどちらで走行しているか、のうちの一つ又は複数を含む、
請求項３に記載の方法。
【請求項５】
前記複数の駐車スペース制約及び障害物制約は、アフィン集合又は凸形状の集合として表される、
請求項１に記載の方法。
【請求項６】
前記複数の駐車スペース制約及び前記障害物制約は、アフィン集合として表され、
前記残りの候補駐車経路から駐車経路を選択するステップは、前記一つ又は複数の候補駐車経路に対する前記駐車スペース制約及び前記障害物制約について二次最適化を実行することを更に含む、
請求項５に記載の方法。
【請求項７】
前記一つ又は複数の候補経路のうちの少なくとも１つが排除された後に、候補経路が残っていないことが確定されたことに応答して、
少なくとも１つの障害物の少なくとも１つの制約を自動的に緩和するステップと、
少なくとも１つの先に排除された候補を前記残りの候補経路に含めるステップと、を更に含む、
請求項１に記載の方法。
【請求項８】
実行可能な命令を有する非一時的なコンピュータ可読媒体であって、
前記実行可能な命令が処理システムによって実行される場合、自動運転車両を駐車するための動作を実行させ、前記動作は、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップとを含む、
実行可能な命令を有する非一時的なコンピュータ可読媒体。
【請求項９】
前記複数の駐車経路のそれぞれが１つ又は複数の区間を含み、前記１つ又は複数の区間のそれぞれがコストを有し、前記駐車経路における前記区間のコストに少なくとも部分的に基づいて駐車経路のコストを確定する、
請求項８に記載の媒体。
【請求項１０】
前記動作は、前記自動運転車両の複数の運動学的制約を確定し、前記自動運転車両の前記複数の運動学的制約に少なくとも部分的に基づいて前記複数の駐車経路を決定するステップを更に含む、
請求項８に記載の媒体。
【請求項１１】
前記複数の運動学的制約は、前記自動運転車両の長さ、前記自動運転車両の幅、前記自動運転車両の最大操舵角、前記自動運転車両の最大加速度又は減速度、前記自動運転車両の最高速度又は最低速度、及び前記自動運転車両が前進モードと後進モードのどちらで走行しているか、のうちの一つ又は複数を含む、
請求項１０に記載の媒体。
【請求項１２】
前記複数の駐車スペース制約及び障害物制約は、アフィン集合又は凸形状の集合として表される、
請求項８に記載の媒体。
【請求項１３】
前記複数の駐車スペース制約及び前記障害物制約は、アフィン集合として表され、
前記残りの候補駐車経路から駐車経路を選択するステップは、前記一つ又は複数の候補駐車経路に用いられる前記駐車スペース制約及び前記障害物制約に対して二次最適化を実行することを更に含む、
請求項１２に記載の媒体。
【請求項１４】
前記動作は、前記一つ又は複数の候補経路のうちの少なくとも１つが排除された後に、候補経路が残っていないことが確定されたことに応答して、
少なくとも１つの障害物の少なくとも１つの制約を自動的に緩和するステップと、
少なくとも１つの先に排除された候補を前記残りの候補経路に含めるステップと、を更に含む、
請求項８に記載の媒体。
【請求項１５】
処理システムを備えるシステムであって、前記処理システムは少なくとも一つのハードウェアプロセッサを有するとともに実行可能な命令がプログラミングされたメモリに接続され、前記実行可能な命令が前記処理システムによって実行される場合、前記処理システムは自動運転車両を駐車するための動作を実行し、前記動作は、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップとを含む、
システム。
【請求項１６】
前記複数の駐車経路のそれぞれが一つ又は複数の区間を含み、前記１つ又は複数の区間のそれぞれがコストを有し、前記駐車経路における前記区間のコストに少なくとも部分的に基づいて駐車経路のコストを確定する、
請求項１５に記載のシステム。
【請求項１７】
前記動作は、前記自動運転車両の複数の運動学的制約を確定し、前記自動運転車両の前記複数の運動学的制約に少なくとも部分的に基づいて前記複数の駐車経路を決定するステップを更に含む、
請求項１５に記載のシステム。
【請求項１８】
前記複数の運動学的制約は、前記自動運転車両の長さ、前記自動運転車両の幅、前記自動運転車両の最大操舵角、前記自動運転車両の最大加速度又は減速度、前記自動運転車両の最高速度又は最低速度、及び前記自動運転車両が前進モードと後進モードのどちらで走行しているか、のうちの一つ又は複数を含む、
請求項１７に記載のシステム。
【請求項１９】
前記複数の駐車スペース制約及び障害物制約は、アフィン集合又は凸形状の集合として表される、
請求項１５に記載のシステム。
【請求項２０】
前記複数の駐車スペース制約及び前記障害物制約は、アフィン集合として表され、
前記残りの候補駐車経路から駐車経路を選択するステップは、前記一つ又は複数の候補駐車経路に用いられる前記駐車スペース制約及び前記障害物制約に対して二次最適化を実行することを更に含む、
請求項１９に記載のシステム。
【請求項２１】
前記動作は、前記一つ又は複数の候補経路のうちの少なくとも１つが排除された後に、候補経路が残っていないことが確定されたことに応答して、
少なくとも１つの障害物の少なくとも１つの制約を自動的に緩和するステップと、
少なくとも１つの先に排除された候補を前記残りの候補経路に含めるステップとを更に含む、
請求項１５に記載のシステム。
【請求項２２】
コンピュータプログラムであって、
前記コンピュータプログラムがプロセッサにより実行されると、請求項１〜７のいずれか一項に記載の方法を実現する、
コンピュータプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、本開示の実施形態は、主に自動運転車両を動作させることに関し、より具体的には、潜在的な障害物の存在下で、自動運転車両（ＡＤＶ）のための駐車計画を最適化するための駐車計画に関する。
【背景技術】
【０００２】
駐車計画は、自動運転車両（ＡＤＶ）をＡＤＶのルートにおける一つ又は複数の移動障害物の周りで駐車スペースまでナビゲートするときに重要である。従来技術においては、駐車計画アルゴリズムは、駐車する車両のすぐ周辺にある静的障害物を考慮に入れるジグザグアルゴリズムを使用する。このような障害物は、他の駐車中の車両、道路の縁石及び他の固定障害物を含んでもよい。人間の運転手に自動駐車支援特徴を提供する車両内の駐車ロジックは、車両の周辺のオブジェクトを検出することができるが、オブジェクトの位置、速度及び方向を予測することができない。従って、障害物は、最初には移動中の車両の近くに位置していなくても、車両に向かって移動している可能性があり、駐車ロジックは、障害物が車両の周辺の所定の境界内に位置するまで当該障害物を考慮しない。これは、移動する障害物との衝突を回避するには、遅すぎるかもしれない。
【０００３】
自動駐車支援システムにおける現在の駐車ロジックは、車両を駐車する際の障害物の動きを考慮していない。ＡＤＶは、移動する障害物を検出することができる。しかし、従来技術のＡＤＶは、前進走行のために設計されている。駐車は、通常に駐車プロセスの少なくとも一部において後進走行に関わる。従来技術のＡＤＶは、駐車支援を有する人間運転の自動車と同じ方法で駐車する。即ち、駐車経路を計画するときに、特に、駐車経路が後進走行に関わる際に、障害物を静的物体として扱い、障害物の速度、方向及び動きを考慮しない。
【０００４】
従来技術においては、駐車問題の解決案は、計算コストが高い。１００秒又はより長い時間内に解決案を生み出さないものもあるので、これは、乗客の駐車及びＡＤＶにとって許容できないほどの遅れである。また、いくつかの従来技術の解決案は、駐車問題に対する解決策を生み出すことが全く確保されていない。
【発明の概要】
【課題を解決するための手段】
【０００５】
本願の一態様によれば、自動運転車両を駐車するためのコンピュータ実施方法が提供され、前記方法は、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップと、を含む。
【０００６】
本願の一態様によれば、実行可能な命令を有する非一時的なコンピュータ可読媒体が提供され、前記実行可能な命令が処理システムによって実行される場合、自動運転車両を駐車するための動作を実行させ、前記動作は、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップとを含む。
【０００７】
本願の他の一態様によれば、処理システムを備えるシステムが提供され、前記処理システムは少なくとも一つのハードウェアプロセッサを有するとともに実行可能な命令がプログラミングされたメモリに接続され、前記実行可能な命令が前記処理システムによって実行される場合、前記処理システムは自動運転車両を駐車するための動作を実行し、前記動作は、
選択された駐車スペースの複数の駐車スペース制約を確定するステップと、
選択された駐車スペースの前記複数の駐車スペース制約に少なくとも部分的に基づいて、前記自動運転車両の現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、
前記複数の駐車経路のそれぞれのためのコストを確定するステップと、
最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、
前記候補駐車経路のそれぞれに沿う前記自動運転車両を囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を排除するステップと、
残りの候補駐車経路から駐車経路を選択するステップと、
選択された駐車経路に基づいて、前記自動運転車両をナビゲートするための基準線を生成するステップと、
前記基準線を用いて、前記自動運転車両を前記自動運転車両の前記現在位置から前記駐車スペースまでナビゲートするステップとを含む。
【図面の簡単な説明】
【０００８】
本開示の実施形態は、図面の各図において限定的ではなく例示的な形態で示され、図面における同じ図面符号が類似した素子を示す。
【図１】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法を実施するためのネットワークシステムを示すブロック図である。
【図２】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法を実施可能な自動運転車両の一例を示すブロック図である。
【図３】一実施形態に係る自動運転車両の感知及び計画システムの一例を示すブロック図であり、当該感知及び計画システムは、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画し、障害物を避けるための最適化方法を実施する。
【図４Ａ】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。
【図４Ｂ】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。
【図４Ｃ】一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。
【図５】実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法を示すブロック図である。
【図６】実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法を示すブロック図である。
【図７】一実施形態に係るデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【０００９】
以下、説明される詳細を参考しながら、本開示の様々な実施形態および態様を説明し、添付図面に前記様々な実施形態を示す。以下の説明及び図面は、本開示を例示するためのものであり、限定するものとして解釈されるべきではない。本開示の様々な実施形態を全面的に理解するために、多数の特定の詳細を説明するが、いくつかの場合、本開示の実施形態に対する簡潔的な説明を提供するように、周知又は従来技術の詳細について説明していない。
【００１０】
本明細書において、「一実施形態」又は「実施形態」とは、当該実施形態に組み合わせて説明された特定の特徴、構造又は特性が本開示の少なくとも一実施形態に含まれてもよいと意味する。「一実施形態では」という表現は、本明細書の全体において全てが同一の実施形態を指すとは限らない。
【００１１】
一実施形態では、自動運転車両（ＡＤＶ）を駐車するためのコンピュータ実施方法は、選択された駐車スペースの複数の駐車スペース制約を確定するステップと、選択された駐車スペースの複数の駐車スペース制約に少なくとも部分的に基づいて、ＡＤＶの現在位置から選択された駐車スペースまでの複数の駐車経路を決定するステップと、複数の駐車経路のそれぞれのためのコストを確定するステップと、最もコストの低い複数の駐車経路から一つ又は複数の候補駐車経路を選択するステップと、候補駐車経路のそれぞれに沿うＡＤＶを囲む一つ又は複数の障害物に少なくとも部分的に基づいて、選択された候補駐車経路のうちの一つ又は複数を候補駐車経路から排除するステップと、残りの候補駐車経路から駐車経路を選択し、選択された駐車経路に基づいて、ＡＤＶをナビゲートするための基準線を生成するステップと、基準線を用いて、ＡＤＶをＡＤＶの現在位置から駐車スペースまでナビゲートするステップとを含む。
【００１２】
もう一つの実施形態では、ＡＤＶは、駐車場の位置を判定し、ＡＤＶの駐車場における位置を決定し、駐車場におけるＡＤＶの駐車スペースを選択する。ＡＤＶは、駐車問題をＡＤＶの複数の駐車スペース制約及び運動学的制約に形成する。運動学的制約は、ＡＤＶの物理的寸法、最大及び最小加速度値、最高及び最低速度値、ＡＤＶの最大操舵角、ＡＤＶの重量、ＡＤＶの最大ブレーキ能力などであってもよい。実施形態では、ＡＤＶは、ＡＤＶの周辺の障害物を考慮しない場合、駐車スペース制約及び駐車場制約をアフィン集合に形成し、複数の駐車経路を生成する。各駐車経路は、いずれも一つ又は複数の区間を有し、各区間は、それと関連するコストを有する。区間のコストは、走行距離、当該距離を走行する時間を含んでもよい。実施形態では、他のコスト要素は、当該区間をナビゲートするために必要な加速度、速度又は操舵角の量を含んでもよい。駐車経路のコストは、駐車経路における各区間のコストの合計であってもよい。ＡＤＶは、複数の駐車経路から最もコストの低い一つ又は複数の候補駐車経路を選択してもよい。そして、ＡＤＶは、ＡＤＶの周辺の障害物を考慮して候補駐車経路のうちの一つ又は複数を排除することができる。駐車経路を排除するか否かを判定するために、ＡＤＶの障碍並びに駐車場及び駐車スペースの制約は、アフィン集合として表すことができる。各候補駐車経路について、一つ又は複数の障害物が候補駐車経路の一つ又は複数の区間と衝突するか否かを分析することができる。候補駐車経路は、二次最適化方法を用いて最適化を行うことができる。残りの候補から適切な駐車経路を見つけることができる。適切な駐車経路が見つかっていない場合、ＡＤＶロジックは、駐車問題における制約のうちの一つ又は複数を緩和するように自動的に調整することができ、当該制約は、障害物、駐車スペース及びＡＤＶの運動学的制約を含む。そして、ＡＤＶロジックは、緩和された制約に基づいて他の複数の駐車経路を生成することができる。残りの候補駐車経路から適切な駐車経路が選択されると、ＡＤＶは、ＡＤＶの現在位置から選択された駐車スペースまでナビゲートするためのＡＤＶ用の基準線を生成することができる。
【００１３】
本明細書に開示された方法動作のいずれは、処理システムにより実施されることができ、当該処理システムは、少なくとも一つのハードウェアプロセッサを含み、当該ハードウェアプロセッサは、実行可能な命令がプログラミングされたメモリに接続され、当該実行可能な命令が実行されると、前記方法動作を実行する。このような実行可能な命令は、一つ又は複数の非一時的なコンピュータ可読媒体に記憶されてもよい。
【００１４】
図１は、一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する際の駐車軌跡を計画するための最適化方法を実施するためのネットワークシステム１００を示すブロック図である。
【００１５】
図１に示すように、ネットワーク構成１００は、ネットワーク１０２を介して一つ又は複数のサーバ１０３〜１０４に通信可能に接続される自動運転車両１０１を含む。一台の自動運転車両が示されているが、複数台の自動運転車両がネットワーク１０２を介して互いに接続されるか、及び／又はサーバ１０３〜１０４に接続されてもよい。ネットワーク１０２は、任意のタイプのネットワーク、例えば、有線又は無線のローカルエリアネットワーク（ＬＡＮ）、インターネットのようなワイドエリアネットワーク（ＷＡＮ）、セルラーネットワーク、衛星ネットワーク又はそれらの組み合わせであってもよい。サーバ１０３〜１０４は、任意のタイプのサーバ又はサーバクラスタであってもよく、例えば、ネットワーク又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ又はそれらの組み合わせであってもよい。サーバ１０３〜１０４は、データ解析サーバ、コンテンツサーバ、交通情報サーバ、地図及び関心地点（ＭＰＯＩ）サーバ又は位置サーバなどであってもよい。
【００１６】
自動運転車両は、自動運転モードで動作するように構成可能な車両を指し、前記自動運転モードにおいて、運転手からの入力が非常に少ないか又は全くない場合に車両が環境を通過するようにナビゲートされる。このような自動運転車両は、車両の動作環境に関連する情報を検出するように構成された１つ以上のセンサを有するセンサシステムを含んでもよい。前記車両及びその関連するコントローラは、検出された情報を使用して前記環境を通過するようにナビゲートする。自動運転車両１０１は、手動モード、全自動運転モード又は部分自動運転モードで走行することができる。
【００１７】
実施形態では、自動運転車両１０１は、感知及び計画システム１１０と、車両制御システム１１１と、無線通信システム１１２と、ユーザインターフェースシステム１１３と、インフォティメントシステム１１４と、センサシステム１１５とを含むが、これらに限定されない。自動運転車両１０１は、更にエンジン、車輪、ステアリングホイール、変速機などの従来の車両に含まれるいくつかの共通構成要素を含んでもよい。前記構成要素は、車両制御システム１１１及び／又は感知及び計画システム１１０によって様々な通信信号及び／又はコマンドで制御されることができ、これらの様々な通信信号及び／又はコマンドは、例えば加速信号又はコマンド、減速信号又はコマンド、ステアリング信号又はコマンド、ブレーキ信号又はコマンドなどを含む。
【００１８】
構成要素１１０〜１１５は、インターコネクト、バス、ネットワーク又はそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素１１０〜１１５は、コントローラエリアネットワーク（ＣＡＮ）バスを介して互いに通信可能に接続することができる。ＣＡＮバスは、ホストコンピュータなしのアプリケーションでマイクロコントローラ及びデバイスが互いに通信できるように設計された車両バス規格である。それは、もともと自動車内部の多重電気配線のために設計されたメッセージに基づくプロトコルであるが、他の多くの環境にも使用される。
【００１９】
ここで、図２に示すように、一実施形態では、センサシステム１１５は、一つ又は複数のカメラ２１１と、全地球測位システム（ＧＰＳ）ユニット２１２と、慣性計測ユニット（ＩＭＵ）２１３と、レーダユニット２１４と、光検出及び測距（ＬＩＤＡＲ）ユニット２１５とを含むが、これらに限定されない。ＧＰＳユニット２１２は、自動運転車両の位置に関する情報を提供するように動作可能な送受信機を含んでもよい。ＩＭＵユニット２１３は、慣性加速度に基づいて自動運転車両の位置及び配向の変化を検知することができる。レーダユニット２１４は、無線信号を利用して自動運転車両のローカル環境内のオブジェクトを検知するシステムを表すことができる。いくつかの実施形態では、オブジェクトを検知することに加えて、レーダユニット２１４は、更にオブジェクトの速度及び／又は進行方向を検知することができる。ＬＩＤＡＲユニット２１５は、レーザを使用して自動運転車両の所在環境の中のオブジェクトを検知することができる。その他のシステム構成要素以外に、ＬＩＤＡＲユニット２１５は、一つ又は複数のレーザ源、レーザスキャンナ及び一つ又は複数の検出器を更に含むことができる。カメラ２１１は、自動運転車両の周辺環境の画像を取り込むための一つ又は複数の装置を含むことができる。カメラ２１１は、スチルカメラ及び／又はビデオカメラであってもよい。カメラ２１１は、赤外線カメラを含んでもよい。カメラは、例えば、回転及び／又は傾斜のプラットフォームに取り付けることによって、機械的に移動されてもよい。
【００２０】
センサシステム１１５は、ソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ（例えば、マイクロホン）のようなその他のセンサを更に含むことができる。オーディオセンサは、自動運転車両の周辺環境から音を取得するように配置されてもよい。ステアリングセンサは、ステアリングホイール、車両の車輪又はそれらの組み合わせの操舵角を検知するように配置されてもよい。スロットルセンサ及びブレーキセンサそれぞれは、車両のスロットル位置及びブレーキ位置を検知する。場合によっては、スロットルセンサとブレーキセンサは、統合型スロットル／ブレーキセンサとして集積されてもよい。
【００２１】
実施形態では、車両制御システム１１１は、ステアリングユニット２０１と、スロットルユニット２０２（加速ユニットともいう）と、ブレーキユニット２０３と、駆動ユニット２０４とを含むが、これらに限定されない。ステアリングユニット２０１は、車両の方向又は進行方向を調整するために使用される。スロットルユニット２０２は、モータ又はエンジンの速度を制御するために使用され、モータ又はエンジンの速度によって車両の速度及び加速度を更に制御する。ブレーキユニット２０３は、摩擦を提供することによって車両の車輪又はタイヤを減速させることで車両を減速させる。代替的に、又は追加的に、ブレーキユニット２０３は、電気的（回生）ブレーキ、エンジン圧縮によるブレーキ、エアブレーキ又はＡＤＶを減速させるその他の制御可能なシステムを含んでもよい。駆動ユニット２０４は、自動運転車両の駆動機構を制御する。駆動ユニット２０４は、自動運転車両の前進走行又は後進走行を制御することができる。駆動ユニット２０４の前進方向及び後進方向は、それぞれの通常の意味を有し、即ち、前進方向では、自動運転車両の駆動輪はＡＤＶの前方と理解される方向にＡＤＶを動かす。後進方向では、ＡＤＶの駆動輪は、ＡＤＶの後方と理解される方向にＡＤＶを動かす。実施形態では、駆動ユニット２０４は、車両の変速機の一つ又は複数の駆動ギアから選択することができる。あるいは、ＡＤＶは、自動変速機又は特定の前進ギアの選択を必要としない無段変速機を有することができる。実施形態では、駆動ユニット２０４は、前進方向にも後進方向にもＡＤＶを駆動しない変速機の「駐車」位置を設定することもできる。実施形態では、駆動ユニット２０４は、駐車ブレーキを設定及び解除することもできる。なお、図２に示す構成要素は、ハードウェア、ソフトウェア又はそれらの組み合わせで実現されることができる。
【００２２】
図１を再び参照して、無線通信システム１１２は、自動運転車両１０１と、装置、センサ、その他の車両などの外部システムとの間の通信を可能にするものである。例えば、無線通信システム１１２は、直接又は通信ネットワークを介して一つ又は複数の装置と無線通信することができ、例えば、ネットワーク１０２を介してサーバ１０３〜１０４と通信することができる。無線通信システム１１２は、任意のセルラー通信ネットワーク又は無線ローカルエリアネットワーク（ＷＬＡＮ）を使用することができ、例えば、ＷｉＦｉを使用して他の構成要素又はシステムと通信することができる。無線通信システム１１２は、例えば、赤外線リンク、ブルートゥース（登録商標）などを使用して装置（例えば、乗客のモバイルデバイス、表示装置、車両１０１内のスピーカ）と直接通信することができる。ユーザインターフェースシステム１１３は、車両１０１の内部で実現された周辺装置の部分（例えば、キーボード、タッチスクリーン表示装置、マイクロホン及びスピーカなどを含む）であってもよい。
【００２３】
特に、自動運転モードで動作するとき、自動運転車両１０１の機能の一部又は全部は、感知及び計画システム１１０によって制御又は管理することができる。感知及び計画システム１１０は、必要なハードウェア（例えば、プロセッサ、メモリ、記憶装置）及びソフトウェア（例えば、オペレーティングシステム、計画及びルーティングプログラム）を備え、センサシステム１１５、制御システム１１１、無線通信システム１１２、及び／又はユーザインターフェースシステム１１３から情報を受信し、受信した情報を処理し、出発地から目的地までのルート又は経路を計画し、その後、計画及び制御情報に基づいて車両１０１を運転する。あるいは、感知及び計画システム１１０は車両制御システム１１１と一体に統合されてもよい。
【００２４】
例えば、乗客としてのユーザは、例えば、ユーザインターフェースを介して旅程の出発地位置及び目的地を指定することができる。感知及び計画システム１１０は、旅程関連データを取得する。例えば、感知及び計画システム１１０は、ＭＰＯＩサーバから位置及びルート情報を取得することができ、前記ＭＰＯＩサーバは、サーバ１０３〜１０４の一部であってもよい。位置サーバは、位置サービスを提供し、ＭＰＯＩサーバは、地図サービス及びいくつかの位置のＰＯＩを提供する。あるいは、そのような位置及びＭＰＯＩ情報は、感知及び計画システム１１０の永続性記憶装置にローカルキャッシュされてもよい。
【００２５】
自動運転車両１０１がルートに沿って移動する時、感知及び計画システム１１０は、交通情報システム又はサーバ（ＴＩＳ）からリアルタイムの交通情報を取得することができる。サーバ１０３〜１０４は、第三者エンティティによって動作させてもよいことに注意すべきである。あるいは、サーバ１０３〜１０４の機能は、感知及び計画システム１１０と一体に集積されてもよい。リアルタイム交通情報、ＭＰＯＩ情報、及び位置情報、並びにセンサシステム１１５によって検出又は検知されたリアルタイムローカル環境データ（例えば、障害物、オブジェクト、周辺の車両）に基づいて、感知及び計画システム１１０は、指定された目的地までに安全かつ効率的に到着するように、最適なルートを計画し、計画されたルートに従って、例えば、制御システム１１１によって車両１０１を運転する。最適ルートは、複数の区間を含むことができ、各区間は、感知及び計画システム１１０により当該区間に用いられる複数の候補経路曲線から当該区間のための最適経路曲線を決定することによって最適化することができ、各区間は、何れも感知及び計画システム１１０により生成される。
【００２６】
サーバ１０３は、様々なクライアントのためのデータ解析サービスを行うためのデータ解析システムであってもよい。一実施形態において、データ解析システム１０３は、データコレクタ１２１と機械学習エンジン１２２とを含む。データコレクタ１２１は、様々な車両（自動運転車両又は人間の運転手によって運転される一般車両）から運転統計データ１２３を収集する。運転統計データ１２３は、発行された運転命令（例えば、スロットル、ブレーキ、ステアリングの命令）及び車両のセンサによって異なる時点で捕捉された車両の応答（例えば、速度、加速度、減速度、方向）を指示する情報を含む。運転統計データ１２３は、異なる時点における運転環境を表す情報、例えば、ルート（出発地位置及び目的地位置を含む）、ＭＰＯＩ、道路状況、気候状況などを更に含むことができる。統計データ１２３は、計画モジュール１１０により計画された駐車経路及び選択された駐車経路の成功又は失敗に関する統計データを含むことができる。成功した駐車経路において訓練を行うために、運転統計データ１２３は、機械学習エンジン１２２と共に使用されてもよい。
【００２７】
図３は、一実施形態に係る自動運転車両の感知及び計画システム３００の一例を示すブロック図であり、当該感知及び計画システム３００は、自動運転車両（ＡＤＶ）を駐車する際の駐車軌跡を計画し、障害物を避けるための最適化方法を実施する。システム３００は、図１の自動運転車両１０１の一部として実現することができ、感知及び計画システム１１０と、制御システム１１１と、センサシステム１１５とを含むが、これらに限定されない。図３に示すように、感知及び計画システム１１０は、測位モジュール３０１と、感知モジュール３０２と、予測モジュール３０３と、決定モジュール３０４と、計画モジュール３０５と、制御モジュール３０６と、ルーティングモジュール３０７と、駐車プランナー３０８と、感知／計画インバータ３０９とを含むが、これらに限定されない。測位モジュール３０１は、地図及びルートデータ３１１並びにルーティングモジュール３０７を含んでもよい。
【００２８】
モジュール３０１〜３０９のうちの一部又は全部は、ソフトウェア、ハードウェア又はそれらの組み合わせで実現することができる。例えば、これらのモジュールは、永続性記憶装置３５２にインストールされ、メモリ３５１にロードされ、一つ又は複数のプロセッサ（図示せず）によって実行されてもよい。なお、これらのモジュールの一部又は全部は、図２の車両制御システム１１１のモジュールの一部又は全部と通信可能に接続されるか、又は一体に集積されることができる。モジュール３０１〜３０９のいくつかは、集積モジュールとして一体化されてもよい。
【００２９】
測位モジュール３０１は、自動運転車両３００の現在位置（例えば、ＧＰＳユニット２１２を利用して）を確定し、ユーザの旅程又はルートに関連する如何なるデータを管理する。測位モジュール３０１は、地図及びルートモジュールともいう。ユーザは、例えば、ユーザインターフェースを介してログインし、旅程の出発地位置及び目的地を指定することができる。測位モジュール３０１は、旅程関連データを取得するために、地図及びルート情報３１１のような、自動運転車両３００のその他の構成要素と通信する。例えば、測位モジュール３０１は、位置サーバと、地図及びＰＯＩ（ＭＰＯＩ）サーバから位置及びルート情報を取得することができる。位置サーバは、位置サービスを提供し、ＭＰＯＩサーバは、地図サービス及びいくつかの位置のＰＯＩを提供し、地図及びルート情報３１１の一部としてキャッシュすることができる。自動運転車両３００がルートに沿って移動する時、測位モジュール３０１は、交通情報システム又はサーバからリアルタイムの交通情報を取得することができる。
【００３０】
センサシステム１１５により提供されたセンサデータと測位モジュール３０１により取得された測位情報とに基づいて、感知モジュール３０２は、周囲環境に対する感知を確定する。感知情報は、普通運転手が運転している車両の周辺から感知すべきものを表すことができる。感知は、オブジェクトの形で、例えば、車線配置（例えば、直進車線又はカーブ車線）、信号機信号、他の車両の相対位置、歩行者、建築物、横断歩道又はその他の交通関連標識（例えば、止まれ標識、ゆずれ標識）などを含むことができる。
【００３１】
感知モジュール３０２は、一つ又は複数のカメラによって取り込まれた画像を処理及び解析し、自動運転車両の環境内のオブジェクト及び／又は特徴を認識するためのコンピュータビジョンシステム又はコンピュータビジョンシステムの機能を含むことができる。前記オブジェクトは、交通信号、道路の境界、他の車両、歩行者及び／又は障害物などを含むことができる。コンピュータビジョンシステムは、オブジェクト認識アルゴリズム、ビデオトラッキング及びその他のコンピュータビジョン技術を使うことができる。いくつかの実施形態では、コンピュータビジョンシステムは、環境地図を描き、オブジェクトを追跡し、オブジェクトの速度などを推定することができる。感知モジュール３０２は、例えば、レーダ及び／又はＬＩＤＡＲのようなその他のセンサから提供されたその他のセンタデータに基づいてオブジェクトを検出することができる。
【００３２】
各々のオブジェクトに対して、予測モジュール３０３は、その場合にオブジェクトがどのように挙動するかを予測する。予測は、地図及びルート情報３１１と交通ルール３１２のセットを考慮した時点で運転環境を感知した感知データに基づいて実行される。例えば、オブジェクトは、反対方向の車両であり、かつ現在の運転環境が交差点を含む場合、予測モジュール３０３は、車両が直進するか、又はカーブ走行するかを予測する。感知データは、交差点に信号機がないことを示す場合、予測モジュール３０３は、車両は交差点に進入する前に完全に停止する必要があると予測する可能性がある。感知データは、車両が現在左折専用車線又は右折専用車線にあることを示す場合、予測モジュール３０３は、車両がそれぞれ左折又は右折する可能性がより高いと予測することができる。
【００３３】
各々のオブジェクトに対して、決定モジュール３０４は、オブジェクトをどのように処理するかを決定する。例えば、特定のオブジェクト（例えば、交差ルートにおける他の車両）及びオブジェクトを記述するメタデータ（例えば、速度、方向、操舵角）に対して、決定モジュール３０４は、前記オブジェクトと遇うときに如何に対応するか（例えば、追い越し、道譲り、停止、追い抜き）を決定する。決定モジュール３０４は、永続性記憶装置３５２に記憶可能な、交通ルール又は運転ルール３１２のようなルールセットに従ってそのような決定を下すことができる。
【００３４】
感知されたオブジェクトのそれぞれに対する決定、及び、ルートの運転区間に用いられる複数の候補経路曲線から決定された最小経路曲線に基づいて、計画モジュール３０５は、ルーティングモジュール３０７によって提供された基準線をベースに、自動運転車両に対して経路又はルート並びに運転パラメータ（例えば、距離、速度及び／又は操舵角）を計画する。言い換えれば、特定のオブジェクトに対して、決定モジュール３０４は、当該オブジェクトに対して何をするかを決定し、計画モジュール３０５は、どのようにするかを決定する。例えば、特定のオブジェクトに対して、決定モジュール３０４は、前記オブジェクトを追い抜くかを決定することができ、計画モジュール３０５は、前記オブジェクトを左側から追い抜くか、又は右側から追い抜くかを決定することができる。車両３００が次の移動周期（例えば、次のルート／経路区間）でどのように移動するかを記述する情報を含む計画及び制御データは、計画モジュール３０５によって生成される。例えば、計画及び制御データは、車両３００に時速３０マイル（ｍｐｈ）で１０ｍ移動し、次に２５マイル（ｍｐｈ）で右車線に変更するように指示することができる。
【００３５】
制御モジュール３０６は、計画及び制御データに基づいて、計画及び制御データによって限定されたルート又は経路に応じて、適切なコマンド又は信号を車両制御システム１１１に送信することにより、自動運転車両を制御及び運転する。前記計画及び制御データは、経路又はルートに沿って異なる時点で適切な車両配置又は運転パラメータ（例えば、スロットル、ブレーキ、及びステアリングコマンド）を使用して、車両をルート又は経路の第１の点から第２の点まで運転するのに十分な情報を含む。
【００３６】
一実施形態では、計画段階は、例えば、時間間隔が１００ミリ秒（ｍｓ）の周期など、複数の計画周期（命令周期ともいう）で実行される。計画周期又は命令周期のそれぞれについて、計画及び制御データに基づいて一つ又は複数の制御命令を発行する。即ち、１００ｍｓごとに、計画モジュール３０５は、次のルート区間又は経路区間（例えば、目標位置及びＡＤＶが目標位置に到達するのに必要な時間が含まれる）を計画する。あるいは、計画モジュール３０５は、具体的な速度、方向及び／又は操舵角などを更に指定することができる。一実施形態では、計画モジュール３０５は、次の所定期間（例えば、５秒）のルート区間又は経路区間を計画する。計画周期のそれぞれに対して、計画モジュール３０５は、前の周期で計画された目標位置に基づいて、現在の周期（例えば、次の５秒）のための目標位置を計画する。そして、制御モジュール３０６は、現在の周期の計画及び制御データに基づいて、一つ又は複数の制御コマンド（例えば、スロットル、ブレーキ、ステアリング制御及び駆動ユニットコマンド）を生成する。制御モジュール３０６は、人間の運転手がＡＤＶを制御すると同時にＡＤＶの他のロジックが動作し続けることができるようにバイパスされることができる。
【００３７】
なお、決定モジュール３０４及び計画モジュール３０５は、集積モジュールとして一体化されてもよい。自動運転車両の走行経路を決定するために、決定モジュール３０４／計画モジュール３０５は、ナビゲーションシステム又はナビゲーションシステムの機能を含むことができる。例えば、ナビゲーションシステムは、自動運転車両の以下の経路に沿った移動を達成するための一連の速度及び進行方向を決定することができる。前記経路では、最終的な目的地に通じる走行車線ベースの経路に沿って自動運転車両を進行させる間に、感知された障害物を実質的に回避できる。目的地は、ユーザインターフェースシステム１１３を介したユーザの入力に従って設定することができる。ナビゲーションシステムは、自動運転車両が走行している間に、走行経路を動的に更新することができる。ナビゲーションシステムは、自動運転車両のための走行経路を決定するために、ＧＰＳシステム及び一つ以上の地図からのデータを取り入れることができる。
【００３８】
決定モジュール３０４／計画モジュール３０５は、自動運転車両の環境における潜在的な障害物を認識、評価、回避又は他の方法で通過するための衝突防止システム又は衝突防止システムの機能を含んでもよい。例えば、衝突防止システムは、制御システム１１１の一つ又は複数のサブシステムを動作させて、ステアリング動作、カーブ走行動作、ブレーキ動作などを行うことによって、自動運転車両のナビゲーション中の変更を実現することができる。衝突防止システムは、周辺の交通パターン、道路状況などに基づいて実行可能な障害物回避動作を自動的に決定することができる。衝突防止システムは、他のセンサシステムが、自動運転車両が方向変更して進入しようとする隣接領域における車両、建築障害物などを検出したときに、ステアリング動作を行わないように構成されることができる。衝突防止システムは、自動運転車両の乗員の安全性を最大限にするとともに利用可能な動作を自動的に選択することができる。衝突防止システムは、自動運転車両の客室内で最も少ない加速度を発生させると予測される回避動作を選択することができる。
【００３９】
ルーティングモジュール３０７は、出発地から目的地までの一つ又は複数のルート又は経路を提供するように配置される。出発地位置から目的地位置までの所与の旅程（例えば、ユーザから受信された所与の旅程）について、ルーティングモジュール３０７は、ルート及び地図情報３１１を取得し、出発地位置から目的地位置までの全ての可能なルート又は経路を決定する。ルーティングモジュール３０７は、出発地位置から目的地位置までの各ルートを決定する地形図形態の基準線を生成することができる。基準線とは、例えば、その他の車両、障害物又は交通状況などからの如何なる干渉を受けていない理想的なルート又は経路を指す。すなわち、道路にその他の車両、歩行者又は障害物がない場合、ＡＤＶは、基準線に精確的に又は密接的に従うべきである。そして、地形図は、決定モジュール３０４及び／又は計画モジュール３０５に提供される。決定モジュール３０４及び／又は計画モジュール３０５は、他のモジュールにより提供された他のデータ（例えば、測位モジュール３０１からの交通状况、感知モジュール３０２により感知された運転環境及び予測モジュール３０３により予測された交通状况）に応じて、全ての走行可能なルートを検査して最適ルートのうちの一つを選択及び補正する。その時点における特定の運転環境に応じて、ＡＤＶを制御するための実際のルート又は経路は、ルーティングモジュール３０７によって提供された基準線に近いか又は異なっていてもよい。全ての可能な経路を調べることは、可能な経路から選択された経路について、選択された経路の一つの区間を決定すること、及び選択された経路の当該区間をナビゲートするための複数の候補経路曲線を決定することを含んでもよい。運転区間（又は、「経路」）をナビゲートすることは、ＡＤＶの現在位置からＡＤＶロジックにより選択された駐車スペースまでの駐車経路を決定することを含んでもよい。駐車ロジックは、駐車プランナー３０８において実現することができる。
【００４０】
駐車プランナー３０８は、計画モジュール３０５に組み込むことができ、又はＡＤＶの別個のロジックユニットとして実施することができる。駐車プランナー３０８は、感知及び計画システム１１０のその他のモジュールにアクセスすることができ、例えば、地図及びルート情報３１１、測位モジュール３０１、感知モジュール３０２、予測モジュール３０３並びに感知及び計画システム１１０の他のモジュールが挙げられる。駐車プランナー３０８は、駐車エリアに駐車スペースがあるか否かを判定するために、駐車場のような駐車エリアをスキャンすることができる。駐車プランナー３０８は、駐車場をスキャンする際に地図及びルート情報３１１を用いることができる。駐車プランナー３０８は、一つ又は複数の使用可能なスペースから駐車スペースを選択し、駐車スペースまでの一つ又は複数の駐車経路を生成することができる。
【００４１】
駐車経路をナビゲートする前に、まずは、ＡＤＶを駐車スペース又は駐車エリアの付近に位置決めする近接経路をナビゲートすることによって、駐車専用ロジックを呼び出してＡＤＶを駐車スペースに駐車させることができる。近接経路は、従来のＡＤＶロジックを用いてナビゲートすることができる。駐車経路は、少なくとも第１の部分及び第２の部分を有し、なお、ＡＤＶは、これらの部分において前進方向から後進方向へ変え、又は、後進方向から前進方向へ変える。駐車経路の一部をナビゲートするために、前進方向においては、ＡＤＶの感知及び計画ロジックは、障害物を感知し、障害物の速度、方向及び位置を予測し、ＡＤＶ１０１に用いられる滑らかな基準線を計画することができる。後進方向においては、ＡＤＶ１０１は、障害物を再測位し、速度、方向及び位置を予測することができるように、計画、感知及び予測モジュールの方向を逆にすることができる。感知／計画インバータ３０９を用いて感知モジュール３０２、予測モジュール３０３及び計画モジュール３０５を逆にすることができる。
【００４２】
実施形態では、駐車プランナー３０８は、ＡＤＶ１０１の一つ又は複数の物理的要因（「運動学」）を考慮に入れることができる。例えば、ＡＤＶ１０１は、後進方向に走行する際に、ステアリング機能を実行する車輪がＡＤＶの相対的な端部に位置することができるので、ＡＤＶをどのように制御するか、及び、ＡＤＶを基準経路に沿ってどのようにナビゲートするかに僅かな変化を引き起こす。ステアリングジオメトリ、ブレーキ、加速度、サスペンション、重量配分、変速比及びその他の物理的要因は、後進走行及び前進走行中の車両の制御に影響を与える可能性がある。駐車プランナー３０８は、前進走行と後進走行との間のこれらの運動学的差異を、ＡＤＶの現在位置から選択された駐車スペースまでナビゲートするために解決される駐車問題に対する制約として説明することができる。
【００４３】
駐車プランナー３０８は、ＡＤＶの現在位置から選択された駐車スペースまでの複数の駐車経路を決定することができる。ジグザグ方法を用いて操舵角、ＡＤＶの長さ及び幅並びにＡＤＶから選択された駐車スペースまでの距離及び方向の制限を考慮して駐車経路を決定する。最初に、ＡＤＶの付近に存在可能な如何なる障害物を考慮せずに駐車経路を生成することができる。それぞれの駐車経路は、何れも駐車経路を構成する一つ又は複数の区間を有することができる。各区間は、駐車経路内の区間のコストの合計を求めることで当該駐車経路と関連付けることができるような関連コストを有する。区間のコスト要因は、当該区間を通過する時間及び距離、当該区間をナビゲートするのに必要な操舵角又は当該区間を通過するのに必要な加速度、ブレーキ又は速度の量を含んでもよい。駐車プランナー３０８は、ＡＤＶの周辺の障害物を考慮せずに生成された複数の駐車経路のうちコストの最も低い一つ又は複数の候補経路を選択することができる。そして、ＡＤＶの周辺の障害物を考慮するとき、ＡＤＶの経路の区間に沿った障害物と衝突するか又は障害物に近すぎる経路の区間に基づいて候補経路のうちの一つ又は複数を排除することができる。残りの候補経路から、駐車プランナー３０８は、ＡＤＶを選択された駐車スペースにナビゲートするための駐車経路を選択することができる。ＡＤＶの計画モジュールは、ＡＤＶをＡＤＶの現在位置から選択された駐車スペースまでナビゲートするために、選択された経路に対応する基準経路を生成することができる。一つ又は複数の候補経路が排除された後、ＡＤＶを駐車するための選択可能な候補経路が残っていなければ、一つ又は複数の駐車制約を自動的に緩和し、新たな複数の駐車経路を生成することができ、それぞれのコストを確定し、一つ又は複数の候補経路を選択し、候補経路に沿って存在する障害物に基づいて一つ又は複数の候補経路を排除し、残りの経路から駐車経路を選択することができる。これらの計算プロセスは、ＡＤＶを選択された駐車スペースにナビゲートするための適切な経路を見つけるために当該プロセスを数回繰り返すことができるほど十分に軽い。
【００４４】
感知／計画インバータ３０９は、ＡＤＶ１０１の走行方向に基づいて感知モジュール３０２、予測モジュール３０３及び計画モジュール３０５の配向及び動作を論理反転することができる。本開示の有益な効果は、駐車中にＡＤＶの感知モジュール、予測モジュール及び計画モジュールを使用できることである。駐車は、通常に駐車経路の少なくとも一部で後進走行を求める。ＡＤＶの前進方向ロジックの感知モジュール、予測モジュール及び計画モジュールは、論理反転して後進走行に利用することができる。例えば、ＡＤＶが前進走行する場合、ＡＤＶの右前方にある障害物は、ＡＤＶが後進モードで走行する時に、ＡＤＶの左後方に位置する。同じオブジェクトが前進方向でＡＤＶに近づいているとしたら、ＡＤＶが障害物に向かって走行しているか、又は障害物がＡＤＶに近づいているか、又はその両方の場合、ＡＤＶが後進走行すると、障害物がＡＤＶから後退し、まだ依然としてＡＤＶに近づいているが、ＡＤＶが後進方向に動いているので、もっとゆっくり、又は動いていないように見える。従って、ＡＤＶの感知、予測及び計画のロジックは、障害物を検出してそれらの位置、方向及び速度を予測するために、前進走行及び後進走行の両者に利用することができる。これを実現するために、ＡＤＶの方向の変化を考慮し、感知、予測及び計画は、論理反転する必要がある。実施形態では、感知、予測及び計画モジュールを反転することは、モジュールの配向を１８０°論理回転させることを含むことができる。
【００４５】
なお、以上に例示及び説明された構成要素の一部又は全ては、ソフトウェア、ハードウェア、又はそれらの組み合わせで実現されることができる。例えば、このような構成要素は、永続性記憶装置にインストールされるとともに記憶されるソフトウェアとして実現されてもよく、前記ソフトウェアは、本願にわたって記載されたプロセッサ又は動作を実現するように、プロセッサ（図示せず）によってメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路（例えば、特定用途向け集積回路又はＡＳＩＣ）、デジタルシグナルプロセッサ（ＤＳＰ）、又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ）のような専用ハードウェアにプログラミング又は埋め込まれた実行可能なコードとして実現されてもよく、前記実行可能なコードは、アプリケーションからの対応するドライバー及び／又はオペレーティングシステムを介してアクセスすることができる。また、このような構成要素は、ソフトウェア構成要素が一つ以上の特定の命令によってアクセス可能な命令セットの一部として、プロセッサ又はプロセッサコアにおける特定のハードウェアロジックとして実現されることができる。
【００４６】
図４Ａは、一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。
【００４７】
図４Ａにおいては、ＡＤＶ１０１は、駐車スペースＳ1〜Ｓ6（Ｓ1、…、Ｓ6）を含む駐車場４０５に既に接近して入った。駐車場４０５は、歩行者用出口４１０を更に有する。駐車スペースＳ1、Ｓ4、Ｓ5及びＳ6は、駐車中の車１０５を示している。駐車スペースＳ2及びＳ3は、使用可能である。ＡＤＶ１０１が駐車場４０５に接近しているとき、ＡＤＶ１０１は、高解像度の地図及びＡＤＶのセンサを用いて駐車スペースのＳ1及びＳ4〜Ｓ6が占用されていること、駐車スペースＳ2及びＳ3が利用可能であること、並びに使用可能な駐車スペースの位置を確定することができる。ＡＤＶ１０１は、ＡＤＶ１０１の駐車場４０５における位置を更に確定することができる。ＡＤＶ１０１は、高解像度の地図及びＡＤＶ１０１のセンサを用いて、駐車スペースＳ3までの潜在的な駐車経路を決定するための制約として、駐車場４０５、駐車スペースＳ3及びＡＤＶ１０１の位置を含む駐車問題を形成することができる。ＡＤＶ１０１は、駐車問題を定義する際にＡＤＶ１０１の運動学的制約を使用することもできる。ＡＤＶ１０１の運動学的制約は、例えば、ＡＤＶ１０１のサイズ、ＡＤＶ１０１の最高速度及び／又は加速度、ＡＤＶ１０１の重量、ＡＤＶ１０１の最大操舵角及びＡＤＶ１０１のブレーキ能力を含んでもよい。その他の運動学的制約を使用してもよい。最初の駐車問題は、ＡＤＶ１０１の周辺の障害物を考慮しない。
【００４８】
ＡＤＶを囲む障害物を考慮せず、駐車場制約、駐車スペース制約及びＡＤＶ１０１の運動学的制約を考慮し、ＡＤＶ１０１は、複数の駐車経路を生成することができ、これらの駐車経路は、ＡＤＶ１０１を、その現在位置から選択された駐車スペースＳ3までナビゲートする駐車問題の潜在的な解決案である。図４Ａにおいては、ＡＤＶ１０１の駐車プランナー３０８は、標識が１、２及び３である３つの例示的な駐車経路を生成した。ＡＤＶ１０１は、任意の数の駐車経路を生成することができる。説明の便宜上、図４Ａは、３つの例だけを示す。駐車経路１を点線で示し、駐車経路２を破線で示し、そして駐車経路３を一点鎖線で示す。駐車場４０５の下方の表に示すように、それぞれの駐車経路は、何れも複数の区間を有してもよい。それぞれの駐車経路の区間は、何れもコスト要素ｃi，jを有してもよく、ただし、ｉは、駐車経路の番号であり、ｊは、駐車経路ｉの区間の番号である。それぞれの駐車経路の区間のコスト要素ｃi，jは、何れもコスト値を有してもよい。駐車経路における区間のコスト値の合計は、当該駐車経路のコストである。コストは、当該区間を通過する速度及び時間、駐車スペースからの距離、当該区間をナビゲートするのに必要な操舵角、又は、ＡＤＶ１０１の運動学的要因を含む他の要因を含む定数要因によって決定することができる。ＡＤＶ１０１は、複数の経路１〜３のうちのコストの最も低い一つ又は複数の候補経路を選択することができる。例示においては、ＡＤＶ１０１は、経路１に比べて、コストの最も低い候補経路として経路２及び３を選択することができる。
【００４９】
図４Ｂは、一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。図４Ｂにおいては、ＡＤＶ１０１は、現在障害物Ｏ1、Ｏ2、及びＯ3のようなＡＤＶ１０１を囲む障害物を考慮することができる。それぞれの障害物は、何れも駐車場４０５に対する当該障害物の位置を示す制約を有することができる。
【００５０】
駐車場４０５は、駐車場４０５の左下角に原点（０，０）を有する格子で示されている。障害物制約は、駐車場４０５の格子に対する境界線として表すことができる。それぞれの障害物Ｏ1、…、Ｏ3及び駐車スペースＳ1、…、Ｓ6の境界線は、図４Ｂにおける駐車場４０５の下方の表に示されている。
【００５１】
図４Ａに示す駐車経路１は、コストの最も低い駐車経路の一つではないので、考慮する範囲から排除された。よって、複数の駐車経路のうちの候補経路は、現在図４Ｂに示す駐車経路２及び３に限られ、障害物Ｏ1、…、Ｏ3に基づいて候補経路２及び３を考慮する。それぞれの障害物Ｏ1、…、Ｏ3は、何れも障害物に関連する軌跡を更に有してもよく、当該軌跡は、ＡＤＶ１０１の予測モジュールによって確定された障害物の方向及び速度を示す矢印を伴う破線で示される。図４Ｂに示すように、それぞれの障害物Ｏ1、…、Ｏ3は、何れも歩行者が使用しようとする出口４１０に向かう方向及び速度を有する。実施形態では、ＡＤＶ１０１の駐車プランナー３０８は、感知及び予測モジュールと対話して  障害物の制約を拡大することで、ＡＤＶ１０１が駐車経路を選択された駐車スペースにナビゲートするときに障害物の予測方向及び速度を考慮に入れることができる。ＡＤＶ１０１は、候補経路２及び３が同様のコストを有することを確定することができる。図４Ａのコスト表を参照する。しかしながら、障害物Ｏ2の制約及びＡＤＶ１０１の運動学的制約を考慮し、経路３は、障害物Ｏ2と衝突するように見える。具体的には、この場合、ＡＤＶ１０１の幅の運動学的制約は、候補駐車経路３の第２の区間において障害物Ｏ2と衝突するように見える。これにより、候補駐車経路から候補駐車経路３を排除することができる。障害物Ｏ3は、予測速度及び方向を有し、候補駐車経路２と交差するが、直接的に衝突しない。障害物Ｏ3の予測速度及び方向、及びＯ3とＡＤＶ１０１の制約に基づき、ＡＤＶ１０１ロジックは、ＡＤＶ１０１が障害物Ｏ3の現在位置に到達する時に、障害物Ｏ3が候補経路２においてＡＤＶ１０１と衝突しないことを予測することができる。実施形態では、それぞれの候補経路について、ＡＤＶ１０１に対する運動学的制約、駐車場４０５に対する制約、駐車スペースＳ3に対する制約及び障害物Ｏ1、…、Ｏ3を含む駐車問題は、二次最適化システムに送信して処理することによって、ＡＤＶ１０１が選択するために経路２及び３のうち経路２が最適な選択であることを決定することができる。
【００５２】
図４Ｃは、一実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法の一部を実行するＡＤＶの一例を示す。図４Ｃにおいては、ＡＤＶ１０１をその現在位置から駐車スペースＳ3にナビゲートするために候補駐車経路２が選択されている。候補駐車経路２は、ＡＤＶ１０１の計画モジュールにより処理されることによって、ＡＤＶ１０１をＡＤＶ１０１の現在位置から駐車スペースＳ3までナビゲートする基準線を生成することができる。基準線２は、計画モジュールによって平滑化されている。
【００５３】
図５は、実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法５００を示すブロック図である。
【００５４】
動作５０５においては、駐車プランナー３０８は、駐車場（例えば、駐車場４０５）及び選択された駐車スペース（例えば、駐車スペースＳ3）に対する複数の制約を確定することによって、ＡＤＶ１０１を選択された駐車スペースに駐車するための駐車問題を定義することができる。
【００５５】
動作５１０においては、選択された駐車スペース及び駐車場に対する複数の駐車スペース制約に少なくとも部分的に基づいて、駐車プランナー３０８は、ＡＤＶ１０１の現在位置から選択された駐車スペースまでの複数の駐車経路を決定することができる。実施形態では、更に、ＡＤＶ１０１の最大操舵角、最大加速度及び速度能力、ＡＤＶ１０１の重量、幅及び長さなど、ＡＤＶ１０１の運動学的制約を用いて複数の停車経路を決定することができる。ＡＤＶ１０１の周辺の一つ又は複数の障害物を考慮せずに複数の駐車経路を生成する。
【００５６】
動作５１５においては、駐車プランナー３０８は、それぞれ一つ又は複数の区間を有する複数の駐車経路のそれぞれのコストを確定することができる。駐車経路の各々の区間は、関連するコストを有することができる。駐車経路のコストは、当該駐車経路の各区間のコストの合計として確定することができる。区間のコスト要因は、通過した区間の距離、時間及び速度、当該区間をナビゲートするのに必要な操舵角、例えば、前進方向から後進方向への変更及び／又は後進方向から前進方向への変更など、当該区間を通過するために方向を変える必要があるか否かなどのことを含んでもよい。
【００５７】
動作５２０においては、駐車プランナー３０８は、複数の駐車経路のうちのコストの最も低い一つ又は複数の候補駐車経路を選択することができる。実施形態では、駐車プランナー３０８は、固定数の最低コストを有する候補駐車経路又は複数の駐車経路のうちのコストの最も低い、１０％のような閾値数百分率の駐車経路を選択することができる。ＡＤＶ１０１の周辺の一つ又は複数の障害物を考慮せずに候補駐車経路の選択を行う。
【００５８】
動作５２５においては、駐車プランナー３０８は、ＡＤＶ１０１の周辺の、ＡＤＶの感知モジュールにより検出された、予測モジュールにより予測された方向及び速度を有する一つ又は複数の障害物を考慮することができる。駐車プランナー３０８は、障害物又は障害物の予測位置に基づいて候補駐車経路の区間と衝突する候補駐車経路のうちの一つ又は複数を排除することができる。実施形態では、駐車場制約、駐車スペース制約及び障害物制約をアフィン集合として表し、ＡＤＶ１０１の運動学的制約と共に二次最適化システムに送ることによって、候補経路を維持するか又は削除するかを判定する。
【００５９】
動作５３０においては、駐車プランナー３０８は、残りの候補駐車経路から最適な候補駐車経路を選択することができる。
【００６０】
動作５３５においては、ＡＤＶの計画モジュールは、ＡＤＶの現在位置から選択された駐車スペースまでナビゲートするために用いられるＡＤＶのための基準線を生成することができる。
【００６１】
動作５４０においては、ＡＤＶは、生成された基準線を用いて、ＡＤＶ１０１の現在位置から選択された駐車スペースまでナビゲートすることができる。
【００６２】
図６は、実施形態に係る、自動運転車両（ＡＤＶ）を駐車する時の駐車軌跡を計画するための最適化方法６００を示すブロック図である。
【００６３】
動作６０５においては、ＡＤＶ１０１は、駐車場（例えば、駐車場４０５）を測位し、駐車場から駐車スペースを選択し、例えば、図４Ａ〜図４Ｃの駐車スペースＳ3を選択する。ＡＤＶ１０１は、感知モジュールの高解像度地図及び車載センサを用いて駐車場の存在及び位置並びに駐車場における開放的な駐車スペースの有用性を確定することができる。
【００６４】
動作６１０においては、駐車場制約、駐車スペース制約、ＡＤＶ１０１の駐車場内における現在位置及び配向、並びにＡＤＶ１０１の運動学的制約に基づいて、ＡＤＶ１０１の駐車プランナー３０８は、ＡＤＶ１０１を選択された駐車スペースに駐車する駐車問題を形成する。運動学的制約は、ＡＤＶの長さ、幅及び重量、ＡＤＶ１０１の前進走行方向及び後進走行方向の最大操舵角、ＡＤＶの最大加速度及び速度能力、ＡＤＶの制動距離能力を含んでもよい。
【００６５】
動作６１５においては、ＡＤＶの周辺に存在可能な任意の障害物を考慮せず、駐車場、駐車スペース及びＡＤＶ１０１の運動学的制約を考慮し、ＡＤＶ１０１の駐車プランナー３０８は、ＡＤＶの現在位置から駐車スペースまでの複数の駐車経路を生成することができる。駐車経路のそれぞれは、一つ又は複数の区間を含んでもよい。駐車経路の各区間は、関連するコストを有する。駐車経路のコストは、当該駐車経路における区間のコストの合計であってもよい。駐車経路の区間のコスト要因は、駐車経路の長さ、当該区間を通過する時間及び／又は速度、当該区間を通過するために必要とされる操舵角、及び、当該駐車経路の区間を通過する速度に応じて必要とされ得る制動を含んでもよい。
【００６６】
動作６２０においては、ＡＤＶ１０１の駐車プランナー３０８は、複数の駐車経路のうちのコストの最も低い一つ又は複数の候補駐車経路を選択する。
【００６７】
動作６２５においては、ＡＤＶ１０１の駐車プランナー３０８は、現在ＡＤＶ１０１の周辺の一つ又は複数の障害物を考慮することができる。それぞれの障害物は、障害物のサイズ及び位置を示す一組の制約を有する。予測モジュールは、各障害物の方向及び速度を予測することができる。実施形態では、それぞれの候補駐車経路について、駐車場、駐車スペース及び障害物に対する制約は、二次最適化モジュールに送ることによって、候補駐車経路が依然として候補であるか又は排除されるかを決定する。動作６２５においては、二次最適化分析に基づいて、及び／又は現在位置又は予測位置の障害物と候補駐車経路の区間との衝突を判断することに基づいて、ＡＤＶ１０１の駐車プランナー３０８は、候補駐車経路のうちの一つ又は複数を排除することができる。
【００６８】
動作６３０においては、ＡＤＶ１０１の駐車プランナー３０８は、残りの候補駐車経路から適切な駐車経路を選択できるか否かを判定することができる。そうであれば、方法６００は動作６３５に進み、そうでなければ方法６００は動作６４０に進む。
【００６９】
動作６３５においては、ＡＤＶは、残りの候補駐車経路から最適な駐車経路を選択する。ＡＤＶ１０１の感知及び計画モジュールは、ＡＤＶ１０１の現在位置から選択された駐車スペースまでナビゲートするために用いられるＡＤＶ１０１のための基準線を生成することができる。そして、ＡＤＶ１０１は、基準線に従ってＡＤＶ１０１の現在位置から選択された駐車スペースまでナビゲートし、方法６００は、終了する。
【００７０】
動作６４０においては、ＡＤＶ１０１の駐車プランナー３０８は、ＡＤＶ１０１の駐車問題を解決するための制約のうちの一つ又は複数を自動的に緩和することができる。制約は、駐車場制約、駐車スペース制約、ＡＤＶの運動学的制約（ＡＤＶ１０１と障害物の間の確定された距離を含む）又は障害物制約を含んでもよい。そして、方法６００は、動作６１５において再開し、動作６１５において、ＡＤＶ１０１の駐車プランナー３０８は、駐車問題に対する制約を形成し、動作６１５の駐車問題において考慮されていない障害物の制約を除いた制約を考慮に入れる複数の駐車経路を生成する。
【００７１】
図７は、本開示の一実施形態と共に使用可能なデータ処理システムの一例を示すブロック図である。例えば、システム１５００は、前記プロセス又は方法のいずれかを実行する前記データ処理システムのいずれか（例えば、図１の感知及び計画システム１１０、又はサーバ１０３〜１０４のいずれか）を表すことができる。システム１５００は、いくつかの異なる構成要素を含んでもよい。これらの構成要素は、集積回路（ＩＣ）、集積回路の一部、ディスクリート型電子デバイス、又は回路基板（例えば、コンピュータシステムのマザーボード若しくはアドインカード）に適するその他のモジュールとして実現されることができ、又は、他の形態でコンピュータシステムのシャーシ内に組み込まれる構成要素として実現されることができる。
【００７２】
なお、システム１５００は、コンピュータシステムのいくつかの構成要素の高レベルビューを示すことを意図している。しかしながら、理解すべきなのは、特定の実施例において付加的構成要素が存在してもよく、また、その他の実施例において示された構成要素を異なる配置にすることが可能である。システム１５００は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレヤー、パーソナルデジタルアシスタント（ＰＤＡ）、スマートウォッチ、パーソナルコミュニケーター、ゲーム装置、ネットワークルーター又はハブ、無線アクセスポイント（ＡＰ）又はリピーター、セット・トップボックス、又はそれらの組み合わせを表すことができる。また、単一の機械又はシステムのみが示されたが、「機械」又は「システム」という用語は、本明細書で説明されるいずれか一種以上の方法を実現するための、単独で又は共同で１つ（又は複数）の命令セットを実行する機械又はシステムのいずれかの組み合わせも含まれると解釈されるものとする。
【００７３】
一実施形態では、システム１５００は、バス又はインターコネクト１５１０を介して接続される、プロセッサ１５０１と、メモリ１５０３と、装置１５０５〜１５０８とを含む。プロセッサ１５０１は、単一のプロセッサコア又は複数のプロセッサコアが含まれる単一のプロセッサ又は複数のプロセッサを表すことができる。プロセッサ１５０１は、マイクロプロセッサ、中央処理装置（ＣＰＵ）などのような、一つ以上の汎用プロセッサを表すことができる。より具体的には、プロセッサ１５０１は、複雑命令セットコンピューティング（ＣＩＳＣ）マイクロプロセッサ、縮小命令セットコンピューティング（ＲＩＳＣ）マイクロプロセッサ、超長命令語（ＶＬＩＷ）マイクロプロセッサ、又はその他の命令セットを実行するプロセッサ、又は命令セットの組み合わせを実行するプロセッサであってもよい。プロセッサ１５０１は更に、例えば、特定用途向け集積回路（ＡＳＩＣ）、セルラー又はベースバンドプロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタルシグナルプロセッサ（ＤＳＰ）、ネットワークプロセッサ、グラフィックプロセッサ、通信プロセッサ、暗号化プロセッサ、コプロセッサ、組込みプロセッサ、又は命令を処理可能な任意の他のタイプのロジックのような、一つ以上の専用プロセッサであってもよい。
【００７４】
プロセッサ１５０１は、超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよく、前記システムの様々な構成要素と通信するための主処理ユニット及び中央ハブとして機能することができる。このようなプロセッサは、システムオンチップ（ＳｏＣ）として実現されることができる。プロセッサ１５０１は、本明細書で説明される動作及びステップを実行するための命令を実行するように構成される。システム１５００は、更に所望によるグラフィックサブシステム１５０４と通信するグラフィックインターフェースを含むことができ、グラフィックサブシステム１５０４は、表示コントローラ、グラフィックプロセッサ、及び／又は表示装置を含むことができる。
【００７５】
プロセッサ１５０１は、メモリ１５０３と通信することができ、メモリ１５０３は、一実施形態では、所定量のシステムメモリを提供するための複数のメモリ装置によって実現されることができる。メモリ１５０３は、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）、又はその他のタイプの記憶装置のような、一つ以上の揮発性記憶（又はメモリ）装置を含むことができる。メモリ１５０３は、プロセッサ１５０１又はその他の任意の装置により実行される命令シーケンスを含む情報を記憶することができる。例えば、様々なオペレーティングシステム、デバイスドライバ、ファームウェア（例えば、ベーシックインプット／アウトプットシステム又はＢＩＯＳ）、及び／又はアプリケーションの実行可能なコード及び／又はデータは、メモリ１５０３にロードされ、プロセッサ１５０１により実行されることができる。オペレーティングシステムは、例えば、ロボットオペレーティングシステム（ＲＯＳ）、Ｍｉｃｒｏｓｏｆｔ（登録商標）社のＷｉｎｄｏｗｓ（登録商標）オペレーティングシステム、アップル社のＭａｃＯＳ（登録商標）／ｉＯＳ（登録商標）、Ｇｏｏｇｌｅ（登録商標）社のＡｎｄｒｏｉｄ（登録商標）、ＬＩＮＵＸ（登録商標）、ＵＮＩＸ（登録商標）、又はその他のリアルタイム若しくは組込みオペレーティングシステムのような、任意のタイプのオペレーティングシステムであってもよい。
【００７６】
システム１５００は、更に、ネットワークインターフェース装置１５０５、所望による入力装置１５０６、及びその他の所望によるＩ／Ｏ装置１５０７を含む装置１５０５〜１５０８のようなＩ／Ｏ装置を含むことができる。ネットワークインターフェース装置１５０５は、無線送受信機及び／又はネットワークインターフェースカード（ＮＩＣ）を含むことができる。前記無線送受信機は、ＷｉＦｉ送受信機、赤外線送受信機、ブルートゥース送受信機、ＷｉＭａｘ送受信機、無線携帯電話送受信機、衛星送受信機（例えば、全地球測位システム（ＧＰＳ）送受信機）、又はその他の無線周波数（ＲＦ）送受信機、又はそれらの組み合わせであってもよい。ＮＩＣは、イーサネット（登録商標）カードであってもよい。
【００７７】
入力装置１５０６は、マウス、タッチパネル、タッチスクリーン（表示装置１５０４と統合されてもよい）、ポインター装置（例えば、スタイラス）、及び／又はキーボード（例えば、物理キーボード又はタッチスクリーンの一部として表示された仮想キーボード）を含むことができる。例えば、入力装置１５０６は、タッチスクリーンと接続するタッチスクリーンコントローラを含むことができる。タッチスクリーン及びタッチスクリーンコントローラは、例えば、様々なタッチ感応技術（コンデンサ、抵抗、赤外線、及び表面弾性波の技術を含むが、それらに限定されない）のいずれか、並びにその他の近接センサアレイ、又は、タッチスクリーンと接触する一つ以上の点を決定するためのその他の素子を用いて、それらの接触及び移動又は間欠を検出することができる。
【００７８】
Ｉ／Ｏ装置１５０７は、音声装置を含むことができる。音声装置は、音声認識、音声複製、デジタル記録、及び／又は電話機能のような音声サポート機能を促進するために、スピーカ及び／又はマイクロホンを含んでもよい。その他のＩ／Ｏ装置１５０７は、更に、ユニバーサルシリアルバス（ＵＳＢ）ポート、パラレルポート、シリアルポート、プリンタ、ネットワークインターフェース、バスブリッジ（例えば、ＰＣＩ−ＰＣＩブリッジ）、センサ（例えば、加速度計のようなモーションセンサ、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサなど）、又はそれらの組み合わせを含むことができる。装置１５０７は、更に結像処理サブシステム（例えば、カメラ）を含むことができ、前記結像処理サブシステムは、写真及びビデオ断片の記録のようなカメラ機能を促進するための、電荷結合素子（ＣＣＤ）又は相補型金属酸化物半導体（ＣＭＯＳ）光学センサのような光学センサを含むことができる。いくつかのセンサは、センサハブ（図示せず）を介してインターコネクト１５１０に接続されることができ、キーボード又はサーマルセンサのようなその他の装置はシステム１５００の具体的な配置又は設計により、組込みコントローラ（図示せず）により制御されることができる。
【００７９】
データ、アプリケーション、一つ以上のオペレーティングシステムなどの情報の永続性記憶を提供するために、プロセッサ１５０１には、大容量記憶装置（図示せず）が接続されることができる。様々な実施形態において、より薄くてより軽量なシステム設計を可能にしながら、システムの応答性を向上するために、このような大容量記憶装置は、ソリッドステート装置（ＳＳＤ）によって実現されることができる。しかしながら、その他の実施形態において、大容量記憶装置は、主にハードディスクドライブ（ＨＤＤ）を使用して実現することができ、より小さい容量のＳＳＤ記憶装置をＳＳＤキャッシュとして機能することで、停電イベントの間にコンテキスト状態及び他のそのような情報の不揮発性記憶を可能にし、それによりシステム動作が再開するときに通電を速く実現することができる。また、フラッシュデバイスは、例えば、シリアルペリフェラルインターフェース（ＳＰＩ）を介してプロセッサ１５０１に接続されることができる。このようなフラッシュデバイスは、前記システムのＢＩＯＳ及びその他のファームウェアを含むシステムソフトウェアの不揮発性記憶のために機能することができる。
【００８０】
記憶装置１５０８は、コンピュータアクセス可能な記憶媒体１５０９（機械可読記憶媒体又はコンピュータ可読媒体ともいう）を含むことができ、前記コンピュータアクセス可能な記憶媒体１５０９には、本明細書で記載されたいずれか一種以上の方法又は機能を具現化する一つ以上の命令セット又はソフトウェア（例えば、モジュール、ユニット、及び／又はロジック１５２８）が記憶されている。処理モジュール／ユニット／ロジック１５２８は、例えば、計画モジュール３０５、制御モジュール３０６、及び／又は駐車プランナー３０８並びに感知／計画インバータ３０９のような、前記構成要素のいずれかを表すことができる。処理モジュール／ユニット／ロジック１５２８は、更に、データ処理システム１５００、メモリ１５０３、及びプロセッサ１５０１による実行中に、メモリ１５０３内及び／又はプロセッサ１５０１内に完全的に又は少なくとも部分的に存在してもよく、データ処理システム１５００、メモリ１５０３、及びプロセッサ１５０１も機械アクセス可能な記憶媒体を構成する。処理モジュール／ユニット／ロジック１５２８は、更に、ネットワークによってネットワークインターフェース装置１５０５を経由して送受信されてもよい。
【００８１】
コンピュータ可読記憶媒体１５０９は、以上に説明されたいくつかのソフトウェア機能を永続的に記憶するために用いることができる。コンピュータ可読記憶媒体１５０９は、例示的な実施形態において単一の媒体として示されるが、「コンピュータ可読記憶媒体」という用語は、前記一つ以上の命令セットが記憶される単一の媒体又は複数の媒体（例えば、集中型又は分散型データベース、及び／又は関連するキャッシュとサーバ）を含むと解釈されるものとする。「コンピュータ可読記憶媒体」という用語は、更に、命令セットを記憶又は符号化できる任意の媒体を含むと解釈されるものであり、前記命令セットは機械により実行され、本開示のいずれか一種以上の方法を前記機械に実行させるためのものである。それゆえに、「コンピュータ可読記憶媒体」という用語は、ソリッドステートメモリ、光学媒体及び磁気媒体、又はその他の任意の非一時的な機械可読媒体を含むが、それらに限定されないと解釈されるものとする。
【００８２】
本明細書に記載の処理モジュール／ユニット／ロジック１５２８、構成要素及びその他の特徴は、ディスクリートハードウェア構成要素として実現されてもよく、又はハードウェア構成要素（例えば、ＡＳＩＣＳ、ＦＰＧＡ、ＤＳＰ又は類似の装置）の機能に統合されてもよい。また、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置におけるファームウェア又は機能性回路として実現されてもよい。また、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置とソフトウェア構成要素の任意の組み合わせで実現されてもよい。
【００８３】
なお、システム１５００は、データ処理システムの様々な構成要素を有するものとして示されているが、構成要素を相互接続する任意の特定のアーキテクチャ又は方式を表すことを意図するものではなく、そのような詳細は、本開示の実施形態と密接な関係がない。また、より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ、及び／又はその他のデータ処理システムも、本開示の実施形態と共に使用することができることを理解されたい。
【００８４】
前記具体的な説明の一部は、既に、コンピュータメモリにおけるデータビットに対する演算のアルゴリズムと記号表現で示される。これらのアルゴリズムの説明及び表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。本明細書では、一般的に、アルゴリズムは、所望の結果につながるセルフコンシステントシーケンスと考えられる。これらの動作は、物理量の物理的処置が必要なものである。
【００８５】
しかしながら、念頭に置くべきなのは、これらの用語及び類似の用語の全ては、適切な物理量に関連付けられるものであり、これらの量を標識しやすくするためのものに過ぎない。以上の説明で他に明示的に記載されていない限り、本明細書の全体にわたって理解すべきなのは、用語（例えば、添付された特許請求の範囲に記載のもの）による説明とは、コンピュータシステム、又は類似の電子式計算装置の動作又はプロセスを指し、前記コンピュータシステム又は電子式計算装置は、コンピュータシステムのレジスタ及びメモリにおける物理（電子）量として示されたデータを制御するとともに、前記データをコンピュータシステムメモリ又はレジスタ又はこのようなその他の情報記憶装置、伝送又は表示装置において同様に物理量として示された別のデータに変換する。
【００８６】
本開示の実施形態は、本明細書の動作を実行するための装置にも関する。このようなコンピュータプログラムは、非一時的なコンピュータ可読媒体に記憶される。機械可読媒体は、機械（例えば、コンピュータ）により読み取り可能な形式で情報を記憶するための任意のメカニズムを含む。例えば、機械可読（例えば、コンピュータ可読）媒体は、機械（例えば、コンピュータ）可読記憶媒体（例えば、読み出し専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリ装置）を含む。
【００８７】
上述した図面において説明されたプロセス又は方法は、ハードウェア（例えば、回路、専用ロジックなど）、ソフトウェア（例えば、非一時的なコンピュータ可読媒体に具現化されるもの）、又は両方の組み合わせを含む処理ロジックにより実行されることができる。前記プロセス又は方法は、以上で特定の順序に応じて説明されたが、前記動作の一部が異なる順序で実行されてもよいことを理解されたい。また、一部の動作は、順番ではなく並行して実行されてもよい。
【００８８】
本開示の実施形態は、いずれの特定のプログラミング言語を参照することなく記載されている。理解すべきなのは、本明細書に記載の本開示の実施形態の教示を実現するために、様々なプログラミング言語を使用することができる。
【００８９】
前記明細書において、本開示の実施形態は、既にその具体的な例示的な実施形態を参照しながら記載された。明らかなように、添付された特許請求の範囲に記載された本開示のより広い趣旨及び範囲を逸脱しない限り、本発明に対して様々な変更を行うことができる。それゆえに、本明細書及び図面は、限定的な意味でなく、例示的な意味で理解されるべきである。
【外国語明細書】
2020001677000001.pdf