(57)【要約】      （修正有）【課題】自律走行車（ＡＤＶ）を動作させる，頑強で効率的な車両測位用のアルゴリズム及びインフラを提供する。【解決手段】高精細地図に対して自律走行車の位置を決定する。ＡＤＶの車載センサはＡＤＶ周辺のオブジェクトの３Ｄ点群を取得する。３Ｄ点群はセルのＡＤＶ特徴空間を構成する。各セルは中間強度値及び標高変化を有する。ＡＤＶの位置を決定するために、候補セルの中間強度及び標高変化に基づく類似性メトリックを使用して、高精細地図に対してＡＤＶ特徴空間におけるセルのサブセットの粗探索を実行する。第１候補セルの類似性を決定した後、類似性スコアのルックアップテーブルを生成して後続の候補セルの類似性スコアの決定に使用する。続いて、類似性スコアが最も大きいセル周辺の候補セルの小規模サブセットにおいて密探索を実行する。【選択図】図５Ａ
2018084573.tif 000002
【特許請求の範囲】
【請求項１】
自律走行車（ＡＤＶ）周辺のセルの自律走行車特徴空間の、それぞれ中間強度及び標高変化を有する複数の候補セルの第１セットを決定するステップと、
前記複数の候補セルのそれぞれに対して、少なくとも部分的に、候補セルの中間強度及び候補セルの標高変化に基づく類似性メトリックを使用して、前記候補セルを囲む前記自律走行車特徴空間のサブセットと地図特徴空間との類似性スコアを決定するステップと、
少なくとも部分的に、前記候補セルの第１セットにおける最大類似性スコアを有する候補セルに基づき、前記地図特徴空間に対して前記自律走行車の位置を決定するステップとを含む、
自律走行車を動作させるコンピュータ実装方法。
【請求項２】
前記複数の候補セルの第１セットは、前記自律走行車周辺のセルの所定グリッドの１セルおきのセルを含む、請求項１に記載の方法。
【請求項３】
前記複数の候補セルの第１セットにおける第１候補セルに対して、類似性スコアを決定することは、第１候補セルの中間強度及び第１候補セルの標高変化を使用して類似性スコアを計算するステップを含み、かつ
前記第１候補セルの前記類似性スコアの計算で取得される情報を使用して、類似性スコアのルックアップテーブルを生成するステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記ルックアップテーブルは、強度平均値範囲及び標高値の変化範囲をインデックスとする、請求項３に記載の方法。
【請求項５】
第２候補セル、及び前記複数の候補セルのうちの後続の候補セルに対して、候補セルの類似性スコアを決定することは、候補セルの中間強度及び標高変化を使用して前記ルックアップテーブルにおいて前記類似性スコアをルックアップするステップを含む、請求項３に記載の方法。
【請求項６】
候補セルの前記最大類似性スコアを決定した後、
前記複数の候補セルの第１セット中の前記最大類似性スコアを有する候補セルの周辺の複数の密探索候補セルの第２セットを決定するステップと、
前記複数の密探索候補セルの第２セット中の各密探索候補セルに対して、
前記類似性メトリックを使用して、前記密探索候補セルを囲む前記自律走行車特徴空間のサブセットと前記地図特徴空間との類似性スコアを決定するステップと、
前記複数の密探索候補セルにおける密探索候補セルの最大類似性を決定するステップとを、さらに含み、
その中で、前記地図特徴空間に対して前記自律走行車の位置を決定するステップは、さらに少なくとも部分的に、前記最大類似性スコアを有する密探索候補セルに基づいて行われる、
請求項１に記載の方法。
【請求項７】
前記類似性スコアを決定するステップは、前記複数の密探索候補セルのそれぞれの前記類似性スコアを計算するステップを含む、請求項６に記載の方法。
【請求項８】
前記地図特徴空間に対して前記自律走行車の位置を決定するステップは、前記自律走行車と、前記地図特徴空間との前記最大類似性スコアを有する前記密探索候補セルとの間のオフセットを決定するステップをさらに含む。請求項６に記載の方法。
【請求項９】
命令が記憶された非一時的な機械可読媒体であって、
前記命令は、プロセッサにより実行される場合、前記プロセッサに動作を実行させ、前記動作には、
前記自律走行車周辺のセルの自律走行車特徴空間の、それぞれ中間強度及び標高変化を有する複数の候補セルの第１セットを決定する動作と、
前記複数の候補セルのそれぞれに対して、少なくとも部分的に、候補セルの中間強度及び候補セルの標高変化に基づく類似性メトリックを使用して、前記候補セルを囲む前記自律走行車特徴空間のサブセットと地図特徴空間との類似性スコアを決定する動作と、
少なくとも部分的に、前記候補セルの第１セットにおける最大類似性スコアを有する候補セルに基づき、前記地図特徴空間に対して前記自律走行車の位置を決定する動作とを含む、
命令が記憶される非一時的機械可読媒体。
【請求項１０】
前記複数の候補セルの第１セットは、前記自律走行車周辺のセルの所定グリッドの１セルおきのセルを含む、請求項９に記載の媒体。
【請求項１１】
前記複数の候補セルの第１セットにおける第１候補セルに対して、類似性スコアを決定する動作は、第１候補セルの中間強度及び第１候補セルの標高変化を使用して類似性スコアを計算する動作を含み、かつ
前記第１候補セルの前記類似性スコアの計算で取得される情報を使用して、類似性スコアのルックアップテーブルを生成する動作をさらに含む、請求項９に記載の媒体。
【請求項１２】
前記ルックアップテーブルは、強度平均値範囲及び標高値の変化範囲をインデックスとする、請求項１１に記載の媒体。
【請求項１３】
第２候補セル、及び前記複数の候補セルのうちの後続の候補セルに対して、候補セルの類似性スコアを決定する動作は、候補セルの前記中間強度及び標高変化を使用して前記ルックアップテーブルにおいて前記類似性スコアをルックアップする動作を含む、請求項１１に記載の媒体。
【請求項１４】
候補セルの前記最大類似性スコアを決定した後、
前記複数の候補セルの第１セット中の前記最大類似性スコアを有する候補セルの周辺の複数の密探索候補セルの第２セットを決定する動作と、
前記複数の密探索候補セルの第２セット中の各密探索候補セルに対して、
前記類似性メトリックを使用して、前記密探索候補セルを囲む前記自律走行車特徴空間のサブセットと前記地図特徴空間との類似性スコアを決定する動作と、
前記複数の密探索候補セルにおける密探索候補セルの最大類似性を決定する動作とを、さらに含み、
その中で、前記地図特徴空間に対して前記自律走行車の位置を決定する動作は、少なくとも部分的に、前記最大類似性スコアを有する前記密探索候補セルに基づいて行われる、
請求項９に記載の媒体。
【請求項１５】
前記類似性スコアを決定する動作は、前記複数の密探索候補セルのそれぞれの前記類似性スコアを計算する動作を含む、請求項１４に記載の媒体。
【請求項１６】
前記地図特徴空間に対して前記自律走行車の位置を決定する動作は、前記自律走行車と、前記地図特徴空間との前記最大類似性スコアを有する前記密探索候補セルとの間のオフセットを決定する動作をさらに含む、請求項１４に記載の媒体。
【請求項１７】
プロセッサと、
前記プロセッサに接続され、命令を記憶するためのメモリとを備え、
前記命令は、前記プロセッサにより実行される場合、前記プロセッサに動作を実行させ、前記動作には、
前記自律走行車周辺のセルの自律走行車特徴空間の、それぞれ中間強度及び標高変化を有する複数の候補セルの第１セットを決定する動作と、
前記複数の候補セルのそれぞれに対して、少なくとも部分的に、前記候補セルの中間強度及び候補セルの標高変化に基づく類似性メトリックを使用して、前記候補セルを囲む前記自律走行車特徴空間のサブセットと地図特徴空間との類似性スコアを決定する動作と、
少なくとも部分的に、前記候補セルの第１セットにおける最大類似性スコアを有する候補セルに基づき、前記地図特徴空間に対して前記自律走行車の位置を決定する動作とを含む、
データ処理システム。
【請求項１８】
前記複数の候補セルの第１セットは、前記自律走行車周辺のセルの所定グリッドの１セルおきのセルを含む、請求項１７に記載のデータ処理システム。
【請求項１９】
前記複数の候補セルの第１セットにおける第１候補セルに対して、類似性スコアを決定する動作は、第１候補セルの中間強度及び第１候補セルの標高変化を使用して類似性スコアを計算する動作を含み、かつ
前記第１候補セルの前記類似性スコアの計算で取得される情報を使用して、類似性スコアのルックアップテーブルを生成する動作をさらに含む、
請求項１７に記載のデータ処理システム。
【請求項２０】
前記ルックアップテーブルは、強度平均値範囲及び標高値の変化範囲をインデックスとする、請求項１９に記載のデータ処理システム。
【請求項２１】
第２候補セル、及び前記複数の候補セルのうちの後続の候補セルに対して、前記候補セルの類似性スコアを決定する動作は、候補セルの中間強度及び標高変化を使用して前記ルックアップテーブルにおいて前記類似性スコアをルックアップする動作を含む、
請求項１９に記載のデータ処理システム。
【請求項２２】
前記動作には、
候補セルの前記最大類似性スコアを決定した後、
前記複数の候補セルの第１セット中の前記最大類似性スコアを有する候補セルの周辺の複数の密探索候補セルの第２セットを決定する動作と、
前記複数の密探索候補セルの第２セット中の各密探索候補セルに対して、
前記類似性メトリックを使用して、前記密探索候補セルを囲む前記自律走行車特徴空間のサブセットと前記地図特徴空間との類似性スコアを決定する動作と
前記複数の密探索候補セルにおける密探索候補セルの最大類似性を決定する動作とを、さらに備え、
その中で、前記地図特徴空間に対して前記自律走行車の位置を決定する動作は、さらに少なくとも部分的に、前記最大類似性スコアを有する密探索候補セルに基づいて行われる、
請求項１７に記載のデータ処理システム。
【請求項２３】
前記類似性スコアを決定する動作は、前記複数の密探索候補セルのそれぞれの前記類似性スコアを計算する動作を含む、請求項２２に記載のデータ処理システム。
【請求項２４】
前記地図特徴空間に対して前記自律走行車の位置を決定する動作は、前記自律走行車と、前記地図特徴空間との前記最大類似性スコアを有する前記密探索候補セルとの間のオフセットを決定する動作をさらに含む、請求項２２に記載のデータ処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、全体として自律走行車（ＡＤＶ：ａｕｔｏｎｏｍｏｕｓ  ｄｒｉｖｉｎｇ  ｖｅｈｉｃｌｅ）を動作させることに関する。より具体的には、本発明の実施形態は自律走行車測位の効率及び精度を向上させることに関する。
【背景技術】
【０００２】
自律モード（例えば、自律運転）で走行している車両は、乗員（特に運転者）を、特定の運転に関連する責任から解放できる。自律モードで走行している場合、車両は車載センサで様々な場所にナビゲートすることができ、それにより車両がヒューマンコンピュータインタラクションの最も少ない場合又はいくつかの乗客がない場合で運行することを可能にさせる。
【０００３】
自律走行の基本的な課題の一つは、種々の重要な情報が注釈された高精細（ＨＤ）地図に対して、自律走行車（ＡＤＶ）の位置を効率的で正確且つリアルタイムに決定することである。最悪の場合でも、精度を１０ｃｍ以内とする必要がある。高精細（ＨＤ）地図におけるＡＤＶの位置は、例えば感知、計画及び制御等のＡＤＶシステム構成要素により正確でタイムリーなＡＤＶ運転の决定を下すように用いられる。ＨＤ地図内においてＡＤＶの位置を決定するために、ＡＤＶ内又はＡＤＶ上に１つ以上のＡＤＶ位置センサが備えられている。センサは、全地球測位衛星センサ（ＧＰＳ）と、慣性計測装置センサ（ＩＭＵ）と、無線探知測距（ＲＡＤＡＲ）と、光検知測距（ＬＩＤＡＲ）とを含む。例えば、全地球測位衛星センサ（ＧＰＳ）及び慣性計測装置センサ（ＩＭＵ）等の従来のハードウェアに基づく測位システムは、特に複雑な信号遮蔽状況を有する動的都市環境において、ＨＤ地図に対する必要な精度を提供不能にする。
【０００４】
自律走行車の従来の測位方法は、通常、２Ｄ、３Ｄ及び２Ｄ−３Ｄ融合法という３種類に大別されている。この３種類のうち、レーザースキャナ（例えば、ＬＩＤＡＲセンサ）を用いた３Ｄに基づく方法は、その高精度及び高信頼性のため、現在普及している。ＬＩＤＡＲセンサを用いてＨＤ地図においてＡＤＶ位置を決定する従来技術方法は、計算コストが高く、あまり大きくない精度及び頑健性のみを持っている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の一態様では、自律走行車を動作させるコンピュータ実装方法を提供し、その中で、自律走行車（ＡＤＶ）周辺のセルの自律走行車特徴空間の、それぞれ中間強度及び標高変化を有する複数の候補セルの第１セットを決定するステップと、前記複数の候補セルのそれぞれに対して、少なくとも部分的に、候補セルの中間強度及び候補セルの標高変化に基づく類似性メトリックを使用して、前記候補セルを囲む前記自律走行車特徴空間のサブセットと地図特徴空間との類似性スコアを決定するステップと、少なくとも部分的に、前記候補セルの第１セットにおける最大類似性スコアを有する候補セルに基づき、前記地図特徴空間に対して前記自律走行車の位置を決定するステップとを含む。
【０００６】
本発明の他の態様では、命令が記憶された非一時的な機械可読媒体を提供し、その中で、前記命令は、プロセッサにより実行される場合、前記プロセッサに動作を実行させ、前記動作には、前記自律走行車周辺のセルの自律走行車特徴空間の、それぞれ中間強度及び標高変化を有する複数の候補セルの第１セットを決定する動作と、前記複数の候補セルのそれぞれに対して、少なくとも部分的に、候補セルの中間強度及び候補セルの標高変化に基づく類似性メトリックを使用して、前記候補セルを囲む前記自律走行車特徴空間のサブセットと地図特徴空間との類似性スコアを決定する動作と、少なくとも部分的に、前記候補セルの第１セットにおける最大類似性スコアを有する候補セルに基づき、前記地図特徴空間に対して前記自律走行車の位置を決定する動作とを含む。
【０００７】
また、本発明の別の態様では、データ処理システムを提供し、その中で、プロセッサと、前記プロセッサに接続され、命令を記憶するためのメモリとを備え、前記命令は、前記プロセッサにより実行される場合、前記プロセッサに動作を実行させ、前記動作には、前記自律走行車周辺のセルの自律走行車特徴空間の、それぞれ中間強度及び標高変化を有する複数の候補セルの第１セットを決定する動作と、前記複数の候補セルのそれぞれに対して、少なくとも部分的に、前記候補セルの中間強度及び候補セルの標高変化に基づく類似性メトリックを使用して、前記候補セルを囲む前記自律走行車特徴空間のサブセットと地図特徴空間との類似性スコアを決定する動作と、少なくとも部分的に、前記候補セルの第１セットにおける最大類似性スコアを有する候補セルに基づき、前記地図特徴空間に対して前記自律走行車の位置を決定する動作とを含む。
【図面の簡単な説明】
【０００８】
本発明の実施形態は、図面の各図に例として非限定的に示され、図面における同一符号は、類似の構成要素（部材）を示す。
【０００９】
【図１】本発明の一実施形態に係るネットワーク化システムを概略的に示すブロック図である。
【図２】本発明の一実施形態に係る自律走行車センサ及び制御モジュールの例を示すブロック図である。
【図３】本発明の一実施形態に係るＡＤＶ感知及び計画システムの例を示すブロック図。
【図４Ａ】いくつかの実施形態に係るＨＤ地図を探索してＨＤ地図に対してＡＤＶの位置を決定するように候補セルのＡＤＶ粗探索空間及びＡＤＶ密探索空間によって囲まれるＡＤＶを示す図である。
【図４Ｂ】いくつかの実施形態に係るＨＤ地図を探索してＨＤ地図に対してＡＤＶの位置を決定するように候補セルのアレイ又はグリッドによって囲まれるＡＤＶ、及びＡＤＶ粗密候補探索空間周辺のＡＤＶ特徴空間を示す図である。
【図５Ａ】いくつかの実施形態に係るＨＤ地図を探索してＨＤ地図に対してＡＤＶの位置を決定する方法を概略的に示すブロック図である。
【図５Ｂ】いくつかの実施形態に係るＨＤ地図を探索してＨＤ地図に対してＡＤＶの位置を決定する方法を概略的に示すブロック図である。
【図６】いくつかの実施形態に係るＨＤ地図の粗探索を実行してＨＤ地図に対してＡＤＶの位置を決定する方法を示すブロック図である。
【図７】いくつかの実施形態に係るＨＤ地図の密探索を実行してＨＤ地図に対してＡＤＶの位置を決定する方法を示すブロック図である。
【図８】いくつかの実施形態に係る候補セル特徴空間をＨＤ地図特徴空間にマッチングしてＡＤＶ候補特徴空間とＨＤ地図特徴空間との類似性スコアを決定する方法を示すブロック図である。
【図９】いくつかの実施形態に係るルックアップテーブルを作成して候補セル特徴空間とＨＤ地図特徴空間との類似性スコアを決定する方法を示すブロック図である。
【図１０】いくつかの実施形態に係るＨＤ地図の更新方法を示すブロック図である。
【図１１】一実施形態に係るデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【００１０】
以下、説明の詳細を参照しながら、本発明の様々な実施形態及び方法を説明し、図面は、前記様々な実施形態を示す。以下の説明及び図面は、本発明を説明するためのものであり、本発明を限定するものではない。本発明の様々な実施形態を完全に把握するために、多数の特定の詳細を説明する。なお、いくつかの例では、本発明の実施形態に対する簡単な説明を提供するために、周知又は従来技術の詳細について説明していない。
【００１１】
本明細書では「一実施形態（一つの実施形態）」又は「実施形態」とは、当該実施形態について組み合わせて説明された特定特徴、構造又は特性が、本発明の少なくとも一つの実施形態に含まれてもよい。語句「一実施形態では」は、本明細書全体において同一実施形態を指すとは限らない。
【００１２】
第１実施形態において、高精細（ＨＤ）地図に対してＡＤＶの位置を決定する方法は、例えば全地球測位衛星位置データを利用してＡＤＶの近似位置を決定するステップを含む。ＧＰＳ位置に対応したＨＤ地図を含むデータベースにアクセスして、ＨＤ地図の注釈付き特徴空間を取得することができる。典型的なＧＰＳ測定値は約３ｍの解像度内で正確である。ＨＤ地図は例えば、１０ｃｍ×１０ｃｍのセルを含んでもよく、各セルに関連付けられた標高及び例えば複数のＬＩＤＡＲ測定値から取得される強度値を有する。強度値はＬＩＤＡＲを反射するオブジェクトの表面の性質を示す。ＬＩＤＡＲレーザーを直接反射する硬い表面を有するオブジェクトは、強度が高いものであってもよい。柔軟な表面又は不規則な表面を有するオブジェクト（例えば、ブッシュやヒト）は、強度が低いものであってもよい。ＨＤ地図は、セルを生成するためのセンサ強度測定値の平均値、及びセルを生成するための複数のセンサ測定値から取得された標高情報の変化を含む各セルの注釈を含んでもよい。各セルはＨＤ地図に対してＡＤＶの位置を決定するための位置情報をさらに含んでもよい。
【００１３】
ＡＤＶはセンサ、例えばＬＩＤＡＲを用いて、ＡＤＶ周辺のセンサデータの３Ｄ点群（ポイントクラウド）を収集する。センサデータは分析されて、例えば、１０ｃｍ×１０ｃｍ以下のようなセルに分解される。ＨＤ地図のように、セルのセットはＡＤＶ周辺の特徴空間を生成する。特徴空間はＡＤＶに対するセルの（ｘ，ｙ）座標、センサ測定値の平均強度、及びセンサデータにおける標高測定値の変化を含む。ＡＤＶ特徴空間からは、約３ｍ×３ｍの物理的空間を示すＡＤＶ周辺の、例えば３２×３２個の候補セルの粗探索空間を選択する。ステップ幅（歩幅）を選択して候補セルを飛ばす。例えば、ステップ幅を２とすることは、候補セルは１セルおきに候補セル周辺の特徴空間の類似性を決定して、ＨＤ地図特徴空間との類似性を取得することを意味する。候補セル周辺の候補特徴空間は約１０２４×１０２４個のセル（各辺が約１００ｍの正方形）である。ＨＤ地図は約１０２４×１０２４個のセルのＨＤ地図特徴空間をさらに有する。トラバーサルされた各候補セルについて、類似性メトリックを決定する。類似性メトリックは候補セル周辺の特徴空間とＨＤ地図の特徴空間の類似性を定量化する。類似性メトリックは、少なくとも部分的に、候補セルの強度属性の平均値及びセルの標高属性の変化に基づくものであってもよい。一実施形態において、第１候補セルの類似性メトリックを計算する。第１候補セルで計算された類似性メトリックによるデータを利用して、ルックアップテーブルを生成する。ルックアップテーブルは第２及び後続の候補セルの類似性メトリックの近似値をルックアップすることに用いられる。類似性メトリックが最大の候補セルを決定する。類似性メトリックが最大の候補セルから密探索候補空間を決定する。一実施形態において、密探索候補空間は３個のセル×３個のセルである。一実施形態において、ＡＤＶの各密探索候補セルの類似性メトリックを計算する。一実施形態において、ルックアップテーブルを使用して密探索候補セルの類似性メトリックのうちの１つ又は複数を決定する。
【００１４】
別の実施形態において、ＡＤＶは３Ｄ点群情報を収集して、ＨＤ地図の更新を生成する。ＡＤＶの近似位置は、例えば全地球測位衛星位置データによって決定される。ＡＤＶの近似位置に対応したＨＤ地図の一部を取得する。一実施形態において、前記ＨＤ地図部分のサイズは少なくとも１０２４×１０２４個のセル（各辺が約１００ｍの正方形）である。ＡＤＶはセンサ、例えばＬＩＤＡＲを使用して、ＡＤＶ周辺のセンサデータの３Ｄ点群を収集する。３Ｄ点群は分析されて、例えば１０ｃｍ×１０ｃｍ以下のセルに分解される。セルのセットはＡＤＶ周辺の特徴空間を生成することに用いられる。特徴空間は、ＡＤＶに対するセルの（ｘ，ｙ）座標、センサ測定値の平均強度、及びセンサデータにおける標高測定値の変化を含む。ＡＤＶ特徴空間からは、約３ｍ×３ｍの物理的空間を示すＡＤＶ周辺の例えば３２×３２個の候補セルの粗探索空間を選択する。ステップを選択して候補セルを飛ばす。例えば、ステップ幅を２とすることは、候補セルは１セルおきに候補周辺の候補特徴空間を検査してＨＤ地図特徴空間との類似性を取得することを意味する。候補セル周辺の候補特徴空間は約１０２４×１０２４個のセル（各辺が約１００ｍの正方形）である。ＨＤ地図は約１０２４×１０２４個のセルのＨＤ地図特徴空間をさらに有する。各候補セルについて、類似性メトリックを決定する。類似性メトリックは、少なくとも部分的に、候補セルの強度属性の平均値及びセルの標高属性の変化に基づくものであってもよい。一実施形態において、第１候補セルの類似性メトリックを計算し、ルックアップテーブルを生成して第２及び後続の候補セルの類似性メトリックの近似値をルックアップする。類似性メトリックが最大の候補セルを決定する。類似性メトリックが最大の候補セルから密探索候補空間を決定する。一実施形態において、密探索候補空間は３×３個のセルである。一実施形態において、ＡＤＶの各密探索候補セルの類似性メトリックを計算する。一実施形態において、ルックアップテーブルを使用して密探索候補セルの類似性メトリックのうちの１つ又は複数を決定する。
【００１５】
ＡＤＶ特徴空間をＨＤ地図に整列（ａｌｉｇｎ）させた後、ＡＤＶ特徴空間をサーバにアップロードしてさらに分析して、ＨＤ地図を更新する。一実施形態において、サーバはアップロードされたＡＤＶ特徴空間とＨＤ地図特徴空間との差異を分析する。差異は新たな建物、樹木、人、異なる仮設物等を含んでもよい。一実施形態において、セルの標高情報はセル内容の信頼できる指標である。例えば、１つ以上の高層建物はＨＤ地図において相対的に固定しているものであり、建物より低い運動中（従って、強度が変化する）ヒトよりも固定する。
【００１６】
別の実施形態において、高速に変化する大規模データセット（例えば、ＡＤＶ周辺のＡＤＶ特徴空間）を記憶するための改善型データ構造は、更新可能なインデックスをインデックスとする特徴空間セルの事前に割り当てられた又は静的なアレイを含む。一実施形態において、特徴空間セルのアレイは、前回の特徴空間計算以来、距離変化（オフセット）が発生したセルの数を決定する。ｘ座標インデックスアレイとｙ座標インデックスアレイは、特徴空間セルのグリッドのインデックスを回転又は再整列させて新規データを追加して、特徴空間のグリッドの一部ではない古いデータを上書きする。第１時刻ｔ０から第２時刻ｔ１まで変化していないデータを第２時刻ｔ１に同一のグリッド空間メモリに維持することを可能になる。ＡＤＶが物理的に移動しＡＤＶ特徴空間データが更新されるため、大量のメモリ「移動」動作を減少させメモリ空間の割り当てと割り当て解除用のオーバーヘッドを節約する。
【００１７】
図１は本発明の一実施形態に係る自律走行車のネットワーク配置１００を示すブロック図である。図１を参照して、ネットワーク配置１００はネットワーク１０２によって１つ以上のサーバ１０３〜１０４に通信可能に接続することができる自律走行車１０１を含む。１つの自律走行車１０１を示すが、ネットワーク１０２によって複数の自律走行車は互いに接続され、及び／又はサーバ１０３〜１０４に接続されることができる。ネットワーク１０２は、任意のタイプのネットワーク、例えば有線又は無線のローカルエリアネットワーク（ＬＡＮ）、例えばインターネット、セルラーネットワーク、衛星ネットワークの広域ネットワーク（ＷＡＮ）又はその組み合わせであってもよい。サーバ１０３〜１０４は任意のタイプのサーバ又はサーバクラスタ、例えばＷｅｂサーバ又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ又はその組み合わせであってもよい。サーバ１０３〜１０４は、データ分析サーバ、内容サーバ、交通情報サーバ、地図（マップ）及び興味のあるポイント（ＭＰＯＩ）サーバ又は位置サーバ等であってもよい。以下、図１１を参照しながら、例示的なサーバシステムを説明する。サーバ１０３は、機械学習エンジン１０３Ａと、地図更新モジュール１０３Ｂと、地図グリッドモジュール１０３Ｃとを含む分析システムを含んでもよい。
【００１８】
自律走行車１０１とは、自律モードになるように配置できる車両を指し、前記自律モードで車両が運転者からの制御入力が非常に少ない又はない場合にもナビゲーションして環境を通過する。このような自律走行車１０１は、センサシステム１１５を含んでもよく、前記センサシステムは車両走行環境に関連する情報を検出するように配置される１つ以上のセンサを有する。前記車両及びその関連するコントローラには検出した情報を使用してナビゲーションし環境を通過する。自律走行車１０１は、手動モード、完全自律モード又は部分自律モードで運行することができる。
【００１９】
一実施形態において、自律走行車１０１は、感知及び計画システム１１０と、車両制御システム１１１と、無線通信システム１１２と、ユーザインターフェースシステム１１３と、センサシステム１１５とを含むが、これらに制限されない。自律走行車１０１は、通常の車両に含まれるある一般的な構成要素（部材）、例えばエンジン、車輪、ハンドル、変速器等をさらに含んでもよく、前記構成要素は、車両制御システム１１１及び／又は感知及び計画システム１１０により多種の通信信号及び／又は命令（例えば加速度信号又は命令、減速信号又は命令、ステアリング信号又は命令、ブレーキ信号又は命令等）を使用して制御することができる。
【００２０】
サーバ１０３は、機械学習エンジン１０３Ａと、地図更新モジュール１０３Ｂと、地図グリッドモジュール１０３Ｃとを含むデータ分析システムを含んでもよい。このようなモジュールのそれぞれは、ソフトウェア、ハードウェア又はその組み合わせで実現できる。一実施形態において、モジュール１０３Ａ、１０３Ｂ及び１０３Ｃは、少なくとも１つのハードウェアを備える。
【００２１】
構成要素１１０〜１１５は、インターコネクト、バス、ネットワーク又はそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素１１０〜１１５は、コントローラローカルエリアネットワーク（ＣＡＮ）バスを介して互いに通信可能に接続することができる。ＣＡＮバスは、マイクロコントローラ及び装置がホストコンピューターのない使用において互いに通信することを許可するような車両バス標準として設計される。それはメッセージに基づくプロトコルであり、最初に自動車内における複数の電線のために設計されたが、数多くのその他の環境（状況）にも用いられる。
【００２２】
図２は、本出願の一実施形態に係る自律走行車１０１（ＡＶ）のセンサ及び制御モジュールの例を示すブロック図である。
【００２３】
現在、図２を参照して、一実施形態において、センサシステム１１５は、１つ以上のカメラ２１１と、全地球測位システム（ＧＰＳ）ユニット２１２と、慣性計測ユニット（ＩＭＵ）２１３と、レーダーユニット２１４と、ＬＩＤＡＲ（光検出及び測距）ユニット２１５とを含むが、これらに制限されない。ＧＰＳシステム２１２は、送受信機を含んでもよく、前記送受信機は、自律走行車の位置に関する情報を提供するように動作することができる。ＩＭＵユニット２１３は、慣性加速度に基づいて自律走行車の位置及び方向変化を感知することができる。レーダーユニット２１４は、無線信号を利用して自律走行車のローカル環境内の対象を感知するシステムを示すことができる。いくつかの実施形態において、対象を感知する以外、レーダーユニット２１４は、さらに対象の速度及び／又は進行方向を感知することができる。ＬＩＤＡＲユニット２１５はレーザを使用して自律走行車の所在する環境における対象を感知することができる。その他のシステム構成要素以外、ＬＩＤＡＲユニット２１５は１つ以上のレーザ光源、レーザースキャナ及び１つ以上の検出器をさらに含んでもよい。カメラ２１１は、自律走行車の周辺環境の画像をキャプチャするための１つ以上の装置を含んでもよい。カメラ２１１は、スチルカメラ及び／又はビデオカメラであってもよい。カメラは、例えば回転及び／又は傾斜のプラットフォームに取り付けられる、機械的に移動可能なものであってもよい。
【００２４】
センサシステム１１５は、その他のセンサ、例えばソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ（例えばマイクロフォン）をさらに含んでもよい。オーディオセンサは、自律走行車１０１周辺の環境から音をキャプチャするように配置されてもよい。ステアリングセンサは、ハンドル、車両の車輪又はその組み合わせのステアリング角を感知するように配置できる。スロットルセンサ及びブレーキセンサは、それぞれ車両のスロットル位置及びブレーキ位置を感知する。いくつかの場合、スロットルセンサ及びブレーキセンサは、集積型スロットル／ブレーキセンサに一体化されてもよい。
【００２５】
一実施形態において、車両制御システム１１１は、ステアリングユニット２０１と、スロットルユニット２０２（加速ユニットとも呼ばれる）と、ブレーキユニット２０３とを含むが、これらに制限されない。ステアリングユニット２０１は、車両の方向又は進行方向を調整することに用いられる。スロットルユニット２０２は、モーター又はエンジンの速度を制御して、続いて車両の速度及び加速度を制御することに用いられる。ブレーキユニット２０３は、摩擦を提供することによって車両の車輪又はタイヤをスローダウンして車両を減速させることに用いられる。注意すべきなのは、図２に示すような構成要素はハードウェア、ソフトウェア又はその組み合わせで実現されることができる。
【００２６】
図１を再び参照して、無線通信システム１１２は、自律走行車１０１と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを許可する。例えば、無線通信システム１１２は、１つ以上の装置に直接に又は通信ネットワークを介して無線通信し、例えばネットワーク１０２によってサーバ１０３〜１０４に通信することができる。無線通信システム１１２は、任意のセルラー通信ネットワーク又は無線ローカルエリアネットワーク（ＷＬＡＮ）（例えばＷｉＦｉ）を使用して他の構成要素やシステムに通信できる。無線通信システム１１２は、例えば赤外線リンク、ブルートゥース等を使用して装置（例えば、乗客の移動装置、表示装置、車両１０１内のスピーカー）に直接に通信できる。ユーザインターフェースシステム１１３は、車両１０１内で実行される周辺装置の一部であってもよく、例えばキーボード、タッチスクリーンディスプレイ装置、マイクロフォン、及びスピーカー等を含む。
【００２７】
一実施形態によれば、自律走行車１０１は、情報及び娯楽を車両１０１の乗客に提供するためのインフォテイメントシステム１１４をさらに含んでもよい。ローカル及び／又は遠隔的に記憶された内容情報に基づいて、前記情報及び娯楽内容を受信し、コンパイルし、レンダリングしてもよい（例えば、サーバ１０３〜１０４によって提供する）。例えば、情報は、ネットワーク１０２を介してサーバ１０３〜１０４のいずれかからリアルタイムにストリーミングされて車両１０１の表示装置に表示されてもよい。前記情報は、例えば１つ以上のカメラでリアルタイムにキャプチャしたローカル情報を利用して強化されてもよく、かつ強化された内容は、その後仮想現実で表示できる。
【００２８】
自律走行車１０１の一部又は全ての機能は、特に自律運転モードで動作する場合、感知及び計画システム１１０により制御したり管理したりすることができる。感知及び計画システム１１０は、必要なハードウェア（例えば、プロセッサ、メモリ、メモリ）、及びソフトウェア（例えば、オペレーティングシステム、計画、及び経路プログラム）を含み、センサシステム１１５、制御システム１１１、無線通信システム１１２、及び／又はユーザインターフェースシステム１１３から情報を受信し、受信された情報を処理し、出発地から目的地までの経路やルートを計画し、そして計画及び制御情報に基づいて車両１０１を運転させる。あるいは、感知及び計画システム１１０と車両制御システム１１１とは一体化されてもよい。一実施形態において、感知及び計画モジュール１１０の計画部分はクローズされてもよい。一実施形態において、制御システム１１１は、クローズされてもよい。計画及び制御モジュールがクローズされた場合、人間ドライバーにより自律走行車１０１を運転することができる。本明細書に記載の実施形態において、オープンされた計画モジュール１１０及び制御システム１１１が用いられている。
【００２９】
操作（動作）において、乗客のユーザとして、例えばユーザインターフェース１１３によって旅程の出発位置及び目的位置を指定することができる。感知及び計画システム１１０は旅関連データを取得する。例えば、感知及び計画システム１１０は、ＭＰＯＩサーバから位置及び経路情報を取得することができ、前記ＭＰＯＩサーバはサーバ１０３〜１０４の一部であってもよい。位置サーバは、位置サービスを提供し、かつＭＰＯＩサーバはマップサービス及びある位置のＰＯＩを提供する。あるいは、このような位置及びＭＰＯＩ情報は、感知及び計画システム１１０の不揮発性メモリにローカルでキャッシュされることができる。
【００３０】
自律走行車１０１がルートに沿って移動する際に、感知及び計画システム１１０は、さらに交通情報システムやサーバ（ＴＩＳ）からリアルタイム交通情報を取得できる。注意すべきなのは、サーバ１０３〜１０４は、第三者エンティティにより動作できる。あるいは、サーバ１０３〜１０４の機能は、感知及び計画システム１１０と一体化されてもよい。リアルタイム交通情報、ＭＰＯＩ情報、位置情報、及びセンサシステム１１５が検出又は感知したリアルタイムなローカル環境データ（例えば、障害物、対象、付近車両）に基づいて、感知及び計画システム１１０は、安全で効果的に指定した目的地に到達するように、最適なルートを計画し、かつ計画したルートにより例えば制御システム１１１を介して車両１０１を運転することができる。
【００３１】
自律走行車１０１において、実際の又は物理的ウィンドウがない可能性がある。それに対して、「ウィンドウ（窓）」（本明細書に仮想ウィンドウ（仮想窓）と呼ばれる）は、タッチスクリーンを有してもよい表示装置（すなわち、窓の形状に成形される平面又は曲面の画面表示装置）により表され、又は代替されてもよい。表示装置は、１つ以上の適切なカメラによってリアルタイムで動的にキャプチャされた画像又は画像ストリーム（例えば、ビデオ）を表示し、ユーザが透明窓を通して実際の物理コンテンツを見る又は確認するようである。各「ウィンドウ」（例えば、表示装置）に対して、リアルタイムに表示しようとする対応するコンテンツをストリーミング伝送するための対応する表示チャネルがあり、前記対応するコンテンツは、拡張現実システム、例えばデータ処理システム１１０により集中処理されてもよい。この場合、仮想現実方式（拡張現実方式とも呼称される）でインフォテイメントシステム１１４を介して強化した画像が表示されている。
【００３２】
本明細書に記載の実施形態において、自律走行車１０１は自動モードで走行する場合、センサシステム１１５の各センサからの出力を記録し、計画及び制御モジュールがオープンしている。制御システム１１１の構成要素への入力は計画モジュール１１０によって提供される。
【００３３】
図３は、本発明の一実施形態に係る自律走行車１０１と共に使用される感知及び計画システム３００の例を示すブロック図３００である。システム３００は、図１の自律走行車１０１の一部（感知及び計画システム１１０、制御システム１１１及びセンサシステム１１５を含むが、これらに制限されない）となるように実現されることができる。図３を参照し、感知及び計画システム１１０は、位置決めモジュール３０１と、感知モジュール３０２と、決定モジュール３０３と、計画モジュール３０４と、制御モジュール３０５と、地図更新モジュール３０６とを含むが、これらに制限されない。
【００３４】
モジュール３０１〜３０６における一部又は全部は、ソフトウェア、ハードウェア又はその組み合わせで実現されてもよい。例えば、これらのモジュールは、永続的記憶装置３５２に取り付けられ、メモリ３５１にロードされ、かつ１つ以上のプロセッサ（図示せず）により実行されてもよい。注意すべきなのは、これらのモジュールにおける一部又は全部は、図２の車両制御システム１１１の一部又は全部のモジュールに通信可能に接続されてもよく、一体化されてもよい。モジュール３０１〜３０６における一部は、一緒に集積モジュールとして一体化されてもよい。
【００３５】
位置決めモジュール３０１（地図及びルーティングモジュールとも言われる）は、ユーザの旅程又はルートに関連する任意のデータを管理する。ユーザは、例えばユーザインターフェースを介してログインするとともに旅程の出発位置及び目的位置を指定してもい。位置決めモジュール３０１は、旅程に関連するデータを取得するように、自律走行車（システム３００）のその他の構成要素（例えば地図及びルート情報３１１）と通信する。例えば、位置決めモジュール３０１は、位置サーバと、地図及びＰＯＩ（ＭＰＯＩ）サーバから位置及びルート情報を取得することができる。位置サーバは、位置サービスを提供し、かつＭＰＯＩサーバは、地図及びルート情報３１１の一部としてキャッシュされてもよい地図サービスと特定な位置のＰＯＩとを提供する。自律走行車（システム３００）がルートに沿って移動する場合、位置決めモジュール３０１は、さらに交通情報システムやサーバからリアルタイム交通情報を取得することができる。
【００３６】
位置決めモジュール３０１は、ＡＤＶの位置を高精度で決定するためのものである。ＡＤＶの位置は、例えばＧＰＳによって大体決定できる。ＧＰＳ座標は、中心がＧＰＳ位置に位置し且つ約１００ｍ×１００ｍのセルのＨＤ地図特徴空間を有する高精細（ＨＤ）地図を取得することに用いられる。感知モジュール３０２のＡＤＶ車載センサもＡＤＶ周辺の約１００ｍ×１００ｍのセルのＡＤＶ特徴空間を生成できる。ＨＤ地図に対してＡＤＶの実際位置を決定するために、位置決めモジュール３０１はＡＤＶ特徴空間の候補部分における候補セルとＨＤ地図の最適マッチを見つける。前記マッチは、ＧＰＳを中心としたＨＤ地図特徴空間に対するＡＤＶのオフセットを決定する。このオフセットはＨＤ地図特徴空間と組み合わせて、ＡＤＶの実際の高精度位置を決定する。
【００３７】
位置決めモジュール３０１は、位置モジュール３０１Ａ、粗探索モジュール３０１Ｂ及び密探索モジュール３０１Ｃを備える。位置モジュール３０１Ａは感知モジュール３０２のセンサからセンサデータの３Ｄ点群を取得する。３Ｄ点群はＡＤＶ周辺のセンサデータを示す。位置モジュール３０１Ａは３Ｄ点群を分析して、約１０ｃｍ×１０ｃｍの領域を示すデータのセルのＡＤＶ特徴空間を生成する。各セルは、ＡＤＶ特徴空間における（ｘ，ｙ）座標、平均強度及び標高の変化を有する。一実施形態において、ＡＤＶ特徴空間は、ＡＤＶ周辺の約１０２４×１０２４個のセルを含む。位置モジュール３０１Ａは、例えばＧＰＳ測定値又はセルタワーとの協働によってＡＤＶの近似位置を取得してもよい。位置モジュール３０１Ａは、さらに、ＧＰＳ座標周辺の約１０２４×１０２４個のセルのＨＤ地図特徴空間を示すセルの高精細（ＨＤ）地図を取得する。ＨＤ地図特徴空間の各セルは、実際の座標空間（例えば、高解像度ＧＰＳや他の座標系）におけるセルの実際位置を示す（ｘ，ｙ）座標を有する。ＨＤ地図特徴空間の各セルはさらにセルの平均強度及びセルにおける標高変化を含んでもよい。ＨＤ地図特徴空間は、ＨＤ地図の各セルの実際の高解像度位置、住所情報、ビジネス情報、レストラン、ガソリンスタンド及び他の有用な情報を含む注釈をさらに含んでもよい。
【００３８】
ＧＰＳの近似精度は約３ｍの解像度である。粗探索モジュール３０１ＢはＡＤＶ周辺の例えば３２×３２個のセルの候補空間を決定し、候補空間の各候補セル周辺の例えば１０２４×１０２４個のセルのＡＤＶ特徴空間と例えば１０２４×１０２４個のセルのＨＤ地図特徴空間をマッチングさせる。候補セル特徴空間（例えば、１０２４×１０２４個のセル）からＨＤ地図特徴空間（例えば、１０２４×１０２４個のセル）への混合ガウスフィッティングを実行する類似性メトリックを使用して、マッチングを実行する。前記類似性メトリックは、以下の通りである。
【００３９】
【数１】
2018084573.tif 000003
ここで、Ｐ（ｚ｜ｘ，ｙ，ｍ）は、候補セル周辺の候補特徴空間とＨＤ地図特徴空間との類似性スコアを示し、ｉとｊはそれぞれの１…１０２４範囲内のイテレータであり、（ｘ，ｙ）は候補セルの座標であり、ｍは地図特徴空間セルデータ、ｚはＡＤＶ特徴空間セルデータ、ｒは値の平均値、σは値の変化、αは調整パラメータを示す。一実施形態において、ＡＤＶ及びＨＤ地図特徴空間セルデータの平均強度はｅｘｐ関数の分子に用いられ、ＡＤＶ及びＨＤ地図特徴空間データの標高変化はｅｘｐ関数の分母に用いられる。類似性メトリックは、例えば３２×３２個のセルの候補空間における各候補セルの類似性スコアを決定することに用いられる。一実施形態において、例えば１個のセルおき又は３個のセルごと又は他の増分の類似性メトリックを決定して候補空間の粗探索を実行する。候補セルにおける最大類似性スコアを決定する。一実施形態において、密探索モジュール３０１Ｃは上記粗探索での最大類似性スコアを有する候補セル周辺で密探索を実行する。密探索空間は候補セル、例えば３×３個のセルの第２セットである。候補セルの第２セットにおける各類似性メトリックを使用して密探索を実行する。候補セルの第２セットにおける最大類似性スコアを有する候補セルはＨＤ地図特徴空間の中心と最適にマッチングするセルとして使用される。ＡＤＶ特徴空間におけるＡＤＶ座標から最適にマッチングしたセルへのオフセットは、ＨＤ地図特徴空間に対してＡＤＶの高解像度位置を決定する。
【００４０】
以上のように、類似性スコアは計算集約的であり得るが、リアルタイムに計算しなければならない。一実施形態において、第１候補セルの類似性スコアの計算後か計算中か、強度値範囲及び標高値（ｅｌｅｖａｔｉｏｎｓ）範囲を決定する。例えば、強度値範囲はＨＤ地図平均強度とＡＤＶ特徴空間セル平均強度との差の最小値及び最大値として決定する。標高値範囲は、ＨＤ地図特徴空間の標高変化の値とＡＤＶ特徴空間セルの標高変化の値との和の最小値及び最大値として決定する。平均強度及び標高変化の範囲を決定する場合、それぞれの段階的な増分を決定できる。例えば、平均強度差の範囲が０．１〜１４．９である場合、０、１、２、…、１５の強度範囲をＨＤ地図特徴空間セルとＡＤＶ特徴空間セルとの平均強度の差の推定範囲とする。同様に、標高変化範囲が例えば０．０〜０．８１である場合、０．０、０．１、０．２、…、０．８の標高範囲をＨＤ地図特徴空間セルの標高変化とＡＤＶ特徴空間セルの標高変化との和の推定範囲とする。上記の決定した推定範囲によって、平均強度範囲と標高変化範囲の各組合せの類似性メトリックを計算して、推定した類似値のテーブルを生成する。候補セルの類似性スコアの良好な推定を決定するための計算量を大幅に減少させる。
【００４１】
一実施形態において、上記粗探索は類似性スコアのルックアップテーブルを使用する。上記密探索は、密探索中の各候補セルの類似性スコアを計算する。一実施形態において、ルックアップテーブルは類似性スコアの密探索に使用可能である。
【００４２】
感知及び計画システム１１０は、感知モジュール３０２をさらに含んでもよい。センサシステム１１５により提供されたセンサデータ、及び位置決めモジュール３０１により得られた位置決め情報に基づいて、感知モジュール３０２は周辺環境に対する感知を確定する。感知情報は、普通の運転者が自分で運転している車両周辺から感知したもの（状況）を示すことができる。感知は、例えば対象形式で現される車線配置（例えば、ストレート又はカーブ）、トラフィック信号、他の車両の相対位置、歩行者、建築物、横断歩道又はその他の交通関連標識（例えば、停止標識、譲り標識）などを含んでもよい。
【００４３】
感知モジュール３０２は、コンピュータビジョンシステム又はコンピュータビジョンシステムの機能を含んでもよく、自律走行車環境における対象及び／又は特徴を認識するように、１つ以上のカメラによりキャプチャされた画像を処理及び分析することに用いられる。前記対象は交通信号、車道の境界線、他の車両、歩行者及び／又は障害物等を含んでもよい。コンピュータビジョンシステムは、対象認識アルゴリズム、ビデオトラッキング及びその他のコンピュータビジョン技術を使用することができる。いくつかの実施形態において、コンピュータビジョンシステムは、環境をマッピングし、対象を追跡し、かつ対象の速度を推定することなどができる。感知モジュール３０２は、その他のセンサ（例えばレーダーユニット２１４及び／又はＬＩＤＡＲユニット２１５）により提供されたその他のセンサデータに基づいて対象を検出することもできる。
【００４４】
それぞれの対象に対して、決定モジュール３０３は、如何に対象を処理する決定をする。例えば、決定な対象（例えば、交差ルートにおける他の車両）及び対象を記述するメタデータ（例えば、速度、方向、ステアリング角）に対して、決定モジュール３０３は、遇う対象に如何に対応する（例えば、追い越し、道譲り、停止、通過）ことを決定する。決定モジュール３０３は、永続的記憶装置３５２（図示せず）に記憶されてもよい１セットのルール（例えば、交通ルール）に基づきこのような決定をすることができる。
【００４５】
感知したそれぞれ対象に対する決定に基づいて、計画モジュール３０４は、自律走行車のために経路又はルート及び運転パラメータ（例えば、距離、速度及び／又はステアリング角）を計画する。すなわち、所定対象に対して、決定モジュール３０３は前記対象に対して如何に対応するかを決定し、計画モジュール３０４は如何に実行するかを確定する。例えば、所定対象に対して、決定モジュール３０３は、前記対象を追い越すことを決定することができ、計画モジュール３０４は、前記対象の左側に追い越すか、右側に追い越すかを確定することができる。計画モジュール３０４は、計画及び制御データを生成し、自律走行車（システム３００）が次の移動周期（例えば、次のルート／経路セグメント）に如何に移動するかを記述する情報を含む。例えば、計画及び制御データは自律走行車（システム３００）が毎時間３０マイル（ｍｐｈ）の速度で１０ｍ移動し、次に２５ｍｐｈの速度で右車線まで変わることを指示することができる。
【００４６】
計画及び制御データに基づいて、制御モジュール３０５は計画及び制御データにより定義されたルート又は経路に基づいて、車両制御システム１１１へ適切な命令又は信号を送信することによって自律走行車を制御及び運転する。前記経路又はルートに沿って違う場所で適時に適切な車両設置又は駆動パラメータ（例えば、スロットル、ブレーキ及びステアリング命令）を使用して車両を第１点から第２点まで運転するように、計画及び制御データは十分な情報を含む。
【００４７】
注意すべきなのは、決定モジュール３０３及び計画モジュール３０４は、集積モジュールに一体化されてもよい。決定モジュール３０３／計画モジュール３０４は、自律走行車の運転経路を確定するために、ナビゲーションシステム又はナビゲーションシステムの機能を含んでもよい。例えば、ナビゲーションシステムは、自律走行車が以下の経路に沿って移動することを実現するための一連の速度及びディレクショナ進行方向を確定することができ、前記経路は、自律走行車を総体的に最終目的位置を向けて通じる車線経路に進ませると同時に、基本的に感知された障害物を避けることができる。目的地はユーザインターフェースシステム１１３により実現されたユーザ入力に基づいて設置できる。ナビゲーションシステムは、自律走行車が走行していると同時に走行経路を動的に更新することができる。ナビゲーションシステムは、自律走行車用の走行経路を確定するように、ＧＰＳシステム及び１つ以上の地図からのデータを合併することができる。
【００４８】
決定モジュール３０３／計画モジュール３０４は、自律走行車環境における潜在障害物を、認識・評価・回避又はその他の方式で迂回するために、衝突回避システム又は衝突回避システムの機能をさらに含んでもよい。例えば、衝突回避システムは、以下の方式によって自律走行車のナビゲーションにおける変更を実現することができ、制御システム１１１の中の１つ以上のサブシステムを動作してターン操縦、ステアリング操縦、ブレーキ操縦等を採る。衝突回避システムは、周辺の交通モード、道路状況等に基づいて障害物を回避可能な操縦を自動的に確定することができる。衝突回避システムは、その他のセンサシステムは、自律走行車がターンして入ろうとする隣接領域における車両、建築障害物等を検出する際にターン操縦を採らないように配置できる。衝突回避システムは、使用可能でありかつ自律走行車の乗員の安全性を最大化させる操縦を自動的に選択することができる。衝突回避システムは、自律走行車の乗員室内で最小の加速度を出現させることが予測された回避操縦を選択することができる。
【００４９】
地図更新モジュール３０６はＡＤＶ特徴空間データを収集しＡＤＶの近似位置のＨＤ地図特徴空間を取得し、上記位置決めモジュール３０１の技術を使用してＡＤＶ特徴空間をＨＤ地図特徴空間に整列させ、対応したＨＤ地図特徴空間を参照してＡＤＶ特徴空間をサーバ、例えばサーバ１０３にアップロードして分析する。以上、図１、地図更新モジュール１０３Ｂ及び地図グリッド１０３Ｃを参照して、サーバ側機能を説明した。
【００５０】
永続的記憶装置３５２は、地図及びルート情報３１１と、地図グリッド３１２と、ルックアップテーブル３１３とを含む。地図及びルート情報は実行しようとする一連のナビゲート操作及び目的地を決定することに用いられる。ナビゲート操作は、ルートを特徴付ける（例えば、速度、交通、信号、道路タイプ等）重み及び属性を有する図中の弧線として表される。地図グリッド３１２は、決定の運転地域内（例えば、「米国（Ｕ．Ｓ．）中」又は「カリフォルニア（Ｃａｌｉｆｏｒｎｉａ）中」又は「サンフランシスコ（Ｓａｎ  Ｆｒａｎｃｉｓｃｏ）中」）の全ての既知のＨＤ地図グリッド特徴空間の完全な地図グリッドである。一実施形態において、地図グリッド３１２は必要に応じて、ＡＤＶ周辺の半径（例えば、１００マイルの半径）をサーバ、例えばサーバ１０３又は１０４からダウンロードする。上記ルックアップテーブル３１３はメモリ３５１（図示せず）又は永続的記憶装置３５２に書き込まれる。
【００５１】
注意すべきなのは、前記の言及された一部又は全部の構成要素（部材）は、ソフトウェア、ハードウェア又はその組み合わせで実現できる。例えば、このような構成要素は、永続的記憶装置（不揮発性メモリ）にインストールされるとともに記憶されたソフトウェアとして実現されてもよく、前記ソフトウェアは、プロセッサ（図示せず）でメモリには、本出願にわたって記載の手順又は動作を実施するようにロードして実行されてもよい。あるいは、このような構成要素は、専用ハードウェア（例えば、集積回路（例えば専用集積回路又はＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ））にプログラミングされ又は嵌め込みされた実行可能なコードとして実現されてもよく、前記実行可能なコードは、アプリケーションからの対応するドライバープログラム及び／又はオペレーティングシステムによってアクセスされてもよい。なお、このような構成要素は、プロセッサ又はプロセッサコアにおける決定のハードウェアロジックとして実現されてもよく、ソフトウェア構成要素が１つ以上の決定命令によってアクセスできる命令セットの一部とする。
【００５２】
図４Ａは、いくつかの実施形態に係るＨＤ地図を探索してＨＤ地図に対してＡＤＶの位置を決定するように、候補セルのＡＤＶ粗探索空間４１０とＡＤＶ密探索空間４２０によって囲まれるＡＤＶを示す。
【００５３】
ＡＤＶ  １０１は、感知モジュール３０２から３Ｄ点群データを受信する位置決めモジュール３０１を備える。位置モジュール３０１Ａは３Ｄ点群データから、例えば１０２４×１０２４個のセルのＡＤＶ特徴空間を生成する。各セルは例えば１０ｃｍ×１０ｃｍであり、ＡＤＶに対する（ｘ，ｙ）位置座標、強度平均値、標高変化値及び他のセンサデータを含む。以上のように、図３を参照して、位置決めモジュール３０１の目標は現実の世界お及びＡＤＶ周辺の現実の世界を示すＨＤ地図に対してＡＤＶの正確な位置を決定するためのものである。ＡＤＶは例えばＧＰＳ測定値を使用して、ＡＤＶ周辺の現実の世界を示すＨＤ地図部分を取得する。ＨＤ地図は、例えば１０２４個のセル×１０２４個のセルであり、各セルが例えば１０ｃｍ×１０ｃｍである。粗探索モジュール３０１ＢはＡＤＶ特徴空間から粗探索候補空間４１０を選択する。粗探索候補空間４１０はＡＤＶを囲むＡＤＶ特徴空間のサブセットである。粗探索候補空間４１０は例えば３２×３２個のセルである。一実施形態において、増分を２として粗探索候補空間４１０をトラバーサルする。例えば、粗探索候補空間４１０の類似性メトリックは時刻ｔ０に（ｘ，ｙ）＝（０，０）で決定される。粗探索候補空間４１０の次の類似性メトリックは時刻ｔ０に（ｘ，ｙ）＝（２、０）で決定され、続いて（４，０）に決定される等である。時刻ｔ０に粗探索候補空間４１０を探索した後、粗探索は測位粗探索候補空間４１０における最大類似性メトリックを有する候補セル４１５を決定し、前記候補セル特徴空間がＨＤ地図特徴空間に最もマッチングすることを示す。密探索モジュール３０１Ｃは最大類似性メトリックを有する候補セル４１５周辺の密探索候補空間４２０を決定する。一実施形態において、密探索候補空間４２０は例えば粗探索候補空間４１０における最大類似性スコアを有する候補セル４１５周辺の３個のセル×３個のセルである。密探索モジュール３０１Ｃは密探索候補空間４２０における各候補セルの類似性メトリックを決定する。密探索モジュール３０１Ｃは密探索候補空間４２０における候補セルの最大類似性スコアを決定する。密探索候補空間４２０における最大類似性スコアを有する候補セルは、ＨＤ地図特徴空間の中心と一致すると決定される。ＡＤＶからＨＤ地図の中心へのオフセットを決定し、前記オフセットはＡＤＶの現実の世界でのＨＤ地図特徴空間に対する位置を高精度で決定できる。
【００５４】
時刻ｔ１において、上記手順を繰り返す。ＡＤＶが移動しているとすると、時刻ｔ１におけるＡＤＶ特徴空間は時刻ｔ０におけるＡＤＶ特徴空間といくつかの共通データを有してもよい。図４Ａは時刻ｔ０と時刻ｔ１における３２×３２粗探索候補空間４１０を示す。類似の概念は時刻ｔ０と時刻ｔ１におけるＡＤＶ特徴空間（１０２４×１０２４個のセル）全体に適用される。例えば粗探索候補空間のデータ構造内のデータをシフトするのではなく、ＡＤＶにつれて移動し、位置決めモジュール３０１は移動したＡＤＶの数、及び粗探索空間４１０内の時刻ｔ１と時刻ｔ０の共通データ量を決定できるが、論理的に時刻ｔ１における新たな候補探索空間セルのデータに置換される。データ構造内のデータシフトの代わりに、ｘ座標方向とｙ座標方向とのそれぞれに対してインデックスのアレイをシフトし、それはＡＤＶの移動に適する。図４Ａに示すように、ＡＤＶの右方移動につれて、時刻ｔ１における候補探索空間４１０に新たなデータが追加された。該図に示す例では、新たな粗探索候補空間データは粗探索候補空間の列０、２、４及び６に記憶されて古いデータを上書きする。一実施形態において、ＡＤＶが時刻ｔ０から時刻ｔ１まで前方に移動するにつれて、新たな候補探索空間セルは論理的に例えば列３２、３３等に追加される。例示の３２×３２個のセルの候補探索空間では、候補探索アレイ空間のｘ座標インデックスを追加して（モジュロ３２）、新たなＡＤＶ特徴空間データを追加するための候補探索空間アレイインデックスを取得する。従って、論理列３２はモジュロ３２で３２＝０、論理列３３はモジュロ３２で３３＝１などである。同様に、候補探索空間グリッドのｙ座標を計算する。データを３２×３２の候補探索空間に追加する上記の例は、例えば約１０２４×１０２４個のセルのＡＤＶ特徴空間に拡張できる。一実施形態において、ＡＤＶ特徴空間は、ＡＤＶ特徴空間データアレイのモジュラス計算を促進するために、１０２４×１０２４個のセルであり得る。
【００５５】
図４Ｂは、いくつかの実施形態に係るＨＤ地図を探索してＨＤ地図に対してＡＤＶの位置を決定するように候補セルのアレイ又はグリッドによって囲まれるＡＤＶ  １０１、及びＡＤＶ粗密候補探索空間周辺のＡＤＶ特徴空間を示す。
【００５６】
以上のように、位置決めモジュール３０１はセンサデータの３Ｄ点群から生成されるＡＤＶ特徴空間を、ＡＤＶにより取得された位置（例えば、ＧＰＳ座標）を中心とする高精細（ＨＤ）地図特徴空間に整列させるためのものである。ＡＤＶ特徴空間をＨＤ地図特徴空間に整列させることは、ＨＤ地図に対して現実の世界のＡＤＶ位置を高精度で決定するプロセスの操作である。
【００５７】
図４ＢはＡＤＶ特徴空間４２５とＨＤ地図特徴空間４３０の背景で設定された図４Ａの粗探索空間４１０を示す。ＡＤＶの近似位置を取得するための位置センサ（例えば、ＧＰＳ座標又はセルタワーの座標）の精度が有限であるため、ＨＤ地図特徴空間４３０はＡＤＶ特徴空間４２５からオフセットする可能性がある。ＡＤＶ粗探索空間４１０においてトラバーサルされた各候補セルについて、候補セル周辺の約１０２４×１０２４個のセルの特徴空間とＨＤ地図特徴空間４３０を比較して候補セルの類似性スコアを決定する。ＡＤＶ粗探索空間４１０における候補セルのうち最大類似性スコアを有する候補セル４２０は約３×３個のセルの密探索空間４１５を生成することに用いられる。ＡＤＶ密探索空間４１５における各セルをトラバーサルし、類似性スコアを決定する。密探索空間４１５における最大類似性スコアを有するＡＤＶ密探索空間４１５の候補セルを、ＡＤＶ特徴空間４２５をＨＤ地図特徴空間４３０に最適に整列させるセルとして選択する。ＡＤＶから、ＨＤ地図特徴空間との類似性スコアの最も大きいＡＤＶ密探索空間４１５における候補セルへのオフセットを決定する。前記オフセットはＨＤ地図と現実の世界に対してＡＤＶの位置を高精度で決定することに用いられる。
【００５８】
図５Ａは、いくつかの実施形態に係るＨＤ地図を探索してＨＤ地図に対してＡＤＶの位置を決定する方法５００を概略的に示すブロック図である。
【００５９】
動作（ステップ）５０１において、位置モジュール３０１Ａは、ＡＤＶ周辺のＡＤＶ特徴空間の複数の候補セルの第１セットを決定する。ＡＤＶ周辺の特徴空間は感知モジュール３０２（例えば、ＬＩＤＡＲ、ＧＰＳ座標又はセルタワーの座標、ソナー、レーダー、他のセンサ又はこれらの組合せ）によって取得されたデータの３Ｄ点群から生成される。ＡＤＶ特徴空間はセル、例えば１０２４×１０２４個のセルとして配置され、各セルが約１０ｃｍ×１０ｃｍである。各セルは前記セルのＡＤＶに対する（ｘ，ｙ）座標、３Ｄ点群から取得されたセルデータの平均強度、及び３Ｄ点群から取得されたセルデータの標高変化を含む。ＡＤＶ特徴空間の複数の候補セルの第１セットはＡＤＶを中心とし、ＡＤＶ特徴空間のサブセット、例えば、ＡＤＶ周辺の３２個のセル×３２個のセルであってもよい。
【００６０】
動作５０２において、位置決めモジュール３０１はＡＤＶの近似位置を中心とする高精細（ＨＤ）地図の一部を取得する。ＨＤ地図の前記部分はオフラインで、例えば、从サーバ１０３又は１０４から取得されてもよく、メモリ３５１又は永続的記憶装置３５２における車載地図から取得されてもよい。動作５２５において、位置決めモジュール３０１（粗探索モジュール３０１Ｂ）は、図６を参照して動作６００に後述するように、複数の候補セルの第１セットを使用して地図特徴空間の探索を実行する。粗探索候補セル４１０の粗探索６００は、候補セル特徴空間におけるＨＤ地図特徴空間との類似性スコアが最も大きい候補セルを生成する。
【００６１】
動作５０３において、位置決めモジュール３０１は少なくとも部分的に粗探索６００からの最大類似性スコアを有する候補セルの（ｘ，ｙ）座標に基づき、高精細地図特徴空間に対してＡＤＶの位置を決定する。
【００６２】
図５Ｂは、いくつかの実施形態に係るＨＤ地図を探索してＨＤ地図に対してＡＤＶの位置を決定する方法５００を概略的に示すブロック図である。
【００６３】
動作５０５において、位置モジュール３０１Ａは感知モジュール３０２（例えば、ＧＰＳ座標又はセルタワーの座標、ソナー、レーダー、他のセンサ又はこれらの組合せ）から取得された情報を使用してＡＤＶの近似位置を取得する。
【００６４】
動作５１０において、位置決めモジュール３０１はＡＤＶの近似位置を中心とする高精細（ＨＤ）地図の一部を取得する。ＨＤ地図の前記部分はオフラインで、例えば、サーバ１０３又は１０４から取得されてもよく、メモリ３５１又は永続的記憶装置３５２における車載地図から取得されてもよい。
【００６５】
動作５１５において、位置決めモジュール３０１は感知モジュール３０２からＡＤＶ周辺のセンサデータの３Ｄ点群を取得する。
【００６６】
動作５２０において、位置決めモジュール３０１はセンサデータの３Ｄ点群を使用して、例えば１０２４×１０２４個のセルのＡＤＶ特徴空間を生成し、各セルが例えば１０ｃｍ×１０ｃｍである。各セルはＡＤＶ特徴空間の（ｘ，ｙ）座標、中間強度値及びセルの標高値変化を含む。中間強度値は前記セルを含む３Ｄ点群センサデータから取得される。標高値の変化も前記セルを含む３Ｄ点群センサデータから取得される。
【００６７】
動作５２５では、粗探索モジュール３０１ＢはＡＤＶを囲むＡＤＶ特徴空間４２５から例えば３２×３２個のセルの粗探索候補空間４１０を決定する。粗探索候補空間４１０はＡＤＶを中心とする。
【００６８】
動作６００において、粗探索候補空間４１０における候補セルの粗探索を実行する。以下、図６を参照して動作６００を詳細に説明する。粗探索候補セル４１０の粗探索６００は、候補セル特徴空間におけるＨＤ地図特徴空間との類似性スコアが最も大きい候補セルを生成する。
【００６９】
動作５３０において、密探索モジュール３０１Ｃは最大類似性スコアを有する粗探索６００の候補セルを密探索候補空間４２０の中心４１５として使用する。一実施形態において、密探索空間４２０のサイズは３個のセル×３個のセルである。
【００７０】
動作７００において、密探索モジュール３０１Ｃは密探索候補空間４２０の密探索を実行する。以下、図７を参照して動作７００を詳細に説明する。密探索７００は、その特徴空間がＨＤ地図特徴空間に最適にマッチングする候補セルを示す最大類似性スコアを有する候補セルを生成する。
【００７１】
動作５３５において、位置決めモジュール３０１は、密探索７００からの最大類似性スコアを有する候補セルの（ｘ，ｙ）座標を使用して、ＡＤＶの位置を高精度で決定する。
【００７２】
図６は、いくつかの実施形態に係るＨＤ地図特徴空間の粗探索を実行してＨＤ地図に対してＡＤＶの位置を決定する方法６００を示すブロック図である。ＨＤ地図特徴空間４３０は図５の動作５１０で決定された。粗探索候補空間４１０は図５の動作５２５で決定される。粗探索６００は位置決めモジュール３０１（粗探索モジュール３０１Ｂ）によって実行される。
【００７３】
動作６０５において、候補探索空間４２０をトラバーサルするためのステップ幅増分を選択する。一実施形態において、候補探索空間４１０のトラバーサルによって候補探索空間４１０における１セルおきの類似性スコアを決定するように、ステップ幅増分を２とする。３２×３２個のセルを有する例粗探索候補空間４１０において、ステップ幅増分を２としたトラバーサルによって、３２×３２個のセル（１０２４個のセル）ではなく、１６×１６セル（２５６個のセル）を探索する。
【００７４】
動作６１０において、最大類似性スコア変数をゼロ又は他の定数、例えば、−１に設定する。
【００７５】
動作６１５において、動作６０５で選択されたステップ幅増分を使用して粗探索候補空間４１０のトラバーサルを開始する。
【００７６】
動作６２０において、粗探索候補空間４１０における第１候補セル。方法６００はステップ幅増分で粗探索候補空間４１０の候補セルをトラバーサルする。
【００７７】
動作６２５において、トラバーサルされた候補セル周辺のＡＤＶ特徴空間から例えば１０２４×１０２４個のセルの候補セル特徴空間を決定する。
【００７８】
動作８００において、候補セルの類似性スコアを決定する。前記類似性スコアは候補セル特徴空間とＨＤ地図特徴空間４３０との類似度を示す。以下、図８を参照して動作８００を詳細に説明する。
【００７９】
動作６３０において、トラバーサルされた候補セルの類似性スコアがいままで粗探索候補空間４１０において発見した最大類似性より大きいか否かを判定する。「はい（ＹＥＳ）」であると、動作６３５において、前記最大類似性を、トラバーサルされた候補セルの類似性スコアとし、トラバーサルされた候補セルの座標を記憶する。方法６００は動作６４０において継続する。
【００８０】
動作６４０において、粗探索候補空間４１０にトラバーサルを必要とするより多くの候補セルがあるか否かを判定する。はいであると、方法６００は動作６４５において継続し、「いいえ（ＮＯ）」であると、方法６００は終了する。
【００８１】
動作６４５において、粗探索候補探索空間４１０のトラバーサルにおいて、次の候補セルを選択する。方法６００は動作（ステップ）６２５において継続する。
【００８２】
図７は、いくつかの実施形態に係るＨＤ地図の密探索を実行してＨＤ地図に対してＡＤＶの位置を決定する方法７００を示すブロック図である。ＨＤ地図特徴空間４３０は図５の動作５１０で決定された。密探索候補空間４２０は図５の動作５３０で決定された。密探索７００は位置決めモジュール３０１（密探索モジュール３０１Ｃ）によって実行される。
【００８３】
動作７０５において、密探索候補探索空間４２０をトラバーサルするためのステップ幅増分を任意に選択する。一実施形態において、ステップ幅増分は、デフォルトでは１つである。
【００８４】
動作７１０において、最大類似性スコア変数をゼロ又は他の定数、例えば、−１に設定する。
【００８５】
動作７１５、動作７０５で任意に選択されたステップ幅増分又はデフォルトでは１とするステップ幅増分を使用して、密探索候補空間４２０のトラバーサルを開始する。
【００８６】
動作７２０において、密探索候補探索空間４２０における第１候補セル。方法６００はステップ幅増分で密探索候補空間４２０の候補セルをトラバーサルする。
【００８７】
動作７２５において、トラバーサルされた候補セル周辺のＡＤＶ特徴空間から例えば１０２４×１０２４個のセルの候補セル特徴空間を決定する。
【００８８】
動作８００において、候補セル特徴空間の類似性スコアを決定する。前記類似性スコアは、候補セル特徴空間とＨＤ地図特徴空間４３０の類似度を示す。以下、図８を参照して動作８００を詳細に説明する。
【００８９】
動作７３０において、トラバーサルされた候補セルの類似性スコアがいままで密探索候補空間４２０において発見した最大類似性より大きいか否かを判定する。はいであると、動作７３５において、前記最大類似性を、トラバーサルされた候補セルの類似性スコアとし、トラバーサルされた候補セルの座標を記憶する。方法７００は動作７４０において継続する。
【００９０】
動作７４０において、密探索候補空間４２０にトラバーサルを必要とするより多くの候補セルがあるか否かを判定する。はいであると、方法７００は動作７４５において継続し、いいえであると、方法７００は終了する。
【００９１】
動作７４５において、密探索候補探索空間４２０のトラバーサルにおいて、次の候補セルを選択する。方法７００は動作７２５において継続する。
【００９２】
図８は、いくつかの実施形態に係る候補セル特徴空間をＨＤ地図にマッチングしてＡＤＶ候補特徴空間とＨＤ地図特徴空間４３０との類似性スコアを決定する方法８００を示すブロック図である。以上それぞれ図６及び図７を参照して説明した粗探索６００及び密探索７００において、候補セルの特徴空間とＨＤ地図の特徴空間との類似性スコアを決定する。候補セル特徴空間及びＨＤ地図特徴空間は、それぞれ例えば１０２４×１０２４個のセルである。類似性スコアを決定する方式の一つは、本明細書に記載の類似性メトリックを使用して類似性スコアを計算する。本明細書に記載の類似性メトリックは、候補セル特徴空間からＨＤ地図特徴空間への混合ガウスフィッティングを使用し、前記混合ガウスフィッティングは、候補セル特徴空間及びＨＤ地図特徴空間における各セルの強度の平均値を使用する。候補セル特徴空間からＨＤ地図特徴空間への混合ガウスフィッティングは、候補特徴空間及びＨＤ地図特徴空間における各セルの標高変化をさらに使用する。候補セル特徴空間及びＨＤ地図特徴空間のサイズを与える場合、このように計算された類似性メトリックは非常に正確で頑健ななフィッティングをもたらすが、計算コストが高い。一実施形態において、候補セルの類似性スコアを決定することは、ルックアップテーブルを使用して、候補特徴空間及びＨＤ地図特徴空間における各セルの強度平均値間の差の近似値、並びに候補特徴空間及びＨＤ地図特徴空間における各セルの標高値の変化の和の近似値から決定された推定類似性スコアによって迅速に行われる。一実施形態において、第１候補セルの類似性メトリックを計算する場合、ルックアップテーブルを生成する。ルックアップテーブルは永続的記憶装置３５２にルックアップテーブル３１３として記憶されてもよく、メモリ３５１に記憶されてもよい。一実施形態において、セルの平均強度及び標高値変化の分析に基づいて、類似性メトリック決定するには計算か、ルックアップテーブルかを選択する。
【００９３】
動作８０５において、候補探索空間（例えば、粗探索空間４１０）のトラバーサルされた候補セルを選択する。
【００９４】
動作８１０において、候補探索空間セルのトラバーサルで探索した第１候補セルであるか否かを判定する。
【００９５】
動作８１０においてセルの探索空間でトラバーサルされた第１候補セルであると判定した場合、動作８２０において候補セル特徴空間とＨＤ地図特徴空間との類似性メトリックを計算し、かつ動作９００において類似性スコアルックアップテーブルを生成することができる。以下、図９を参照して動作９００を説明する。
【００９６】
動作８１０においてセルの探索空間でトラバーサルされた第１候補セルではないと判定した場合、ルックアップテーブルが既に生成され、かつ動作８１５において候補セル特徴空間とＨＤ地図特徴空間との類似性メトリックをルックアップすることができる。
【００９７】
図９は、いくつかの実施形態に係るルックアップテーブル３１３を作成して候補セル特徴空間とＨＤ地図特徴空間との類似性スコアを決定する方法９００を示すブロック図である。ルックアップテーブル３１３は強度平均値範囲と標高値の変化範囲をインデックスとする二次元テーブルである。
【００９８】
動作９０５において、中間強度の範囲を決定して、ルックアップテーブル３１３にアクセスする。類似性メトリック計算期間に発見した最小中間強度値と最大中間強度値を決定することで、第１候補セルの類似性メトリック計算期間に中間強度の範囲を決定する。例えば、強度平均値の範囲は例えば最小０．０１〜最大２４．９２である。強度平均値は、候補セル特徴空間におけるセルの強度平均値とＨＤ地図特徴空間におけるセルの強度平均値との差を示す。
【００９９】
動作９１０において、中間強度値の範囲を、合理的なサイズのルックアップテーブルを生成する解決案に四捨五入する。以上の例では、強度平均値の範囲を０、１、２、…、２５に四捨五入することで、候補特徴空間からＨＤ地図特徴空間への混合ガウスフィッティングを適用した段階的な推定を生成する。
【０１００】
動作９１５において、第１候補セルの類似性メトリック計算期間に、同様に標高値の変化範囲を決定する。例えば、標高値の変化範囲は例えば最小０．０９〜最大０．８１である。標高値の変化は、候補特徴空間におけるセルの標高値の変化とＨＤ地図特徴空間におけるセルの標高値の変化との和を示す。
【０１０１】
動作９２０において、標高値の変化範囲を、合理的なサイズのルックアップテーブルを生成する解決案に四捨五入する。以上の例では、標高値の変化範囲を０．０、０．１、…、０．８に四捨五入することで、候補セル特徴空間からＨＤグリッド特徴空間への混合ガウスフィッティングを適用した段階的な推定を生成する。
【０１０２】
動作９２５において、それぞれの範囲にわたって、四捨五入した強度平均値と四捨五入した標高値変化の全ての組合せの類似性スコアを計算してルックアップテーブル３１３を生成する。
【０１０３】
図１０は、いくつかの実施形態に係るＨＤ地図の更新方法１０００を示すブロック図である。現実の世界の変化につれて、ＨＤ地図を更新する必要がある。ＨＤ地図を更新するために、ＡＤＶは走行時にセンサデータの３Ｄ点群を生成し、ＡＤＶ特徴空間を生成し、特徴空間をＨＤ地図に整列させ、整列されたＡＤＶ特徴空間を例えばサーバ１０３にアップロードし、ＨＤ地図の分析及び更新に供する。サーバ１０３は、機械学習エンジン１０３Ａ、地図更新モジュール１０３Ｂ及び地図グリッド１０３Ｃを含む。機械学習エンジン１０３Ａは、地図更新モジュール１０３Ｂによって、更新された地図グリッド１０３Ｃを生成する。
【０１０４】
一実施形態において、１つ以上の顧客ＡＤＶは自発的に又は報酬と引き換え、整列されたＡＤＶ特徴空間をサーバ１０３にアップロードする。一実施形態において、サーバ１０３はＨＤ地図特徴空間内における１つ以上のＡＤＶをランダムにポーリングし、ＡＤＶ特徴空間をＡＤＶからサーバ１０３にダウンロードする。一実施形態において、顧客ＡＤＶは１つ以上のＨＤ地図特徴空間のＡＤＶ特徴空間情報を記憶し、バックグラウンド処理タスクとして、ＡＤＶが移動していない期間にＡＤＶ自体の車載ＨＤ地図グリッド３１２を更新する。これは、常に一日の同一時間に同一ルートを走行して同一目的地を往復するＡＤＶ顧客に対して特に有用である。強化学習によって、ＨＤ地図の時間経過に伴う細部と精度を大幅に向上させる。
【０１０５】
地図更新方法１０００は、車両の運転時に実行されるオンライン部分と、収集したＡＤＶ特徴空間情報を収集、分析してＨＤ地図を更新するオフライン部分との２つの部分を含む。地図更新方法１０００のオンライン部分は地図更新モジュール３０６によって実行される。オンライン部分は、図５〜図９に記載の位置決めモジュール３０１用のオンライン過程と非常に類似する。地図更新方法１０００のオフライン部分はサーバ１０３の地図更新モジュール１０３Ｂによって実行される。ＡＤＶがその地図グリッド３１２を更新する実施形態において、例えばバックグラウンドタスクとする或いはＡＤＶが移動していない場合、地図更新方法１０００のオフライン部分は地図更新モジュール３０６によって実行される。
【０１０６】
動作１００５において、位置モジュール３０１Ａは感知モジュール３０２から取得された情報（例えば、ＧＰＳ座標又はセルタワーの座標、ソナー、レーダー、他のセンサ又はこれらの組合せ）を使用してＡＤＶの近似位置を取得する。
【０１０７】
動作１０１０において、位置決めモジュール３０１は、ＡＤＶの近似位置を中心とする高精細（ＨＤ）地図の一部を取得する。ＨＤ地図の前記部分はオフラインで、例えばサーバ１０３又は１０４から取得されてもよく、永続的記憶装置３５２における車載地図から取得されてもよい。
【０１０８】
動作１０１５において、位置決めモジュール３０１は感知モジュール３０２からＡＤＶ周辺のセンサデータの３Ｄ点群を取得する。
【０１０９】
動作１０２０において、位置決めモジュール３０１はセンサデータの３Ｄ点群を使用して、例えば約１０２４×１０２４個のセルのＡＤＶ特徴空間を生成し、各セルが例えば１０ｃｍ×１０ｃｍである。各セルはＡＤＶ特徴空間内における（ｘ，ｙ）座標、中間強度値及びセルの標高値変化を有する。中間強度値は前記セルを含む３Ｄ点群センサデータから取得される。標高値の変化も前記セルを含む３Ｄ点群センサデータから取得される。
【０１１０】
動作１０２５では、ＡＤＶはＡＤＶ特徴空間をＨＤ地図特徴空間に整列させる。以上、図５〜図９を参照してＡＤＶ特徴空間をＨＤ地図特徴空間に整列させることを説明した。
【０１１１】
動作１０３０において、ＡＤＶは整列したＡＤＶ特徴空間をサーバ１０３にアップロードする。一実施形態において、ＨＤ地図グリッド空間を参照してＡＤＶ特徴空間をサーバ１０３にアップロードする。一実施形態において、サーバは整列したＡＤＶ特徴空間を要求し、整列したＡＤＶ特徴空間をサーバ１０３にダウンロードする。
【０１１２】
動作１０３５〜１０５０はサーバ１０３が地図更新モジュール１０３Ｂによって実行される（オフライン操作）。動作１０３５〜１０５０は、代替的又は別途にＡＤＶ地図更新モジュール３０６によってオフラインで実行され、又はバックグラウンドタスクで実行され、それによりその地図グリッド３１２を更新する。
【０１１３】
動作１０３５において、サーバ１０３はＡＤＶ特徴空間の候補セルを選択して、地図グリッド、例えば地図グリッド１０３Ｃを更新する。
【０１１４】
動作１０４０において、地図更新モジュール１０３ＢはＡＤＶ候補セル特徴空間と地図グリッド特徴空間との差異を分析する。分析は、選択したＡＤＶセル周辺の候補特徴空間、例えば、３２×３２個のセル候補特徴空間を生成することを含む。候補特徴空間における各候補セルの類似性メトリックを生成する。低類似性（例えば、第３０パーセンタイル）、高強度値（例えば、第７０パーセンタイル）及び高標高変化（例えば、第７０のパーセンタイル）を有する１つ以上の候補セルを考慮に入れて、ＡＤＶ候補セルを利用してＨＤ地図グリッドを更新する。低類似性スコア、高強度値及び高標高変化を有するセルは、例えば、前回のＨＤ地図更新を行ってから、新たな建物が建設されたことを示す。同様に、低類似性スコア、低強度値及び高標高変化を有するセルは、オブジェクト（例えば、建物）が前回の更新時にＨＤ地図に存在しているが、ＡＤＶ特徴空間に存在していないことを示す。サーバ機械学習エンジン１０３Ａは人工知能の方法を適用でき、規則に基づく１つ以上のシステムを備え、さらに小さな候補空間において特徴空間を分析する時、ＨＤ地図グリッド特徴空間に対して顕著な差異を有する整列したＡＤＶ特徴空間の意味を決定する。
【０１１５】
動作１０４５において、動作１０４０での分析結果に応じて、地図更新モジュール１０３Ｂは前記分析によってＨＤグリッド特徴空間を更新する。
【０１１６】
動作１０５０において、特徴空間のより多くのＡＤＶセルを分析するか否かを判定する。「はい」であると、方法１０００は動作１０３５において継続し、「いいえ」である場合、方法１０００は終了する。
【０１１７】
図１１は、本発明の一実施形態と組み合わせて使用されるデータ処理システム１１００を例示的に示すブロック図である。例えば、システム１１００は、上記動作（ステップ／プロセス／手順）又は方法のいずれかを実行する任意のデータ処理システム（例えば、自律走行車１０１システム（例えば、感知及び計画システム１１０、制御システム１１１、インフォテイメントシステム１１４など）、または、図１のサーバ１０３〜１０４のいずれか１つ）を示してもよい。システム１１００は、多数の異なる構成要素を含んでもよい。これらの構成要素は、集積回路（ＩＣ）、集積回路の一部、分散型電子装置又は回路基板に適用された他のモジュール（例えばコンピュータシステムのマザーボード又はアドインカード）、又は他の方式でコンピュータシステムのシャシーに組み込まれた構成要素として実現されることができる。
【０１１８】
さらに、システム１１００は、コンピュータシステムの多数の構成要素の高レベルビューを示すことを目的とする。しかしながら、いくつかの実現形態では、付加的構成要素が存在する場合があることを理解すべきである。また、他の実現形態において示される構成要素が異なる配置を有してもよい。システム１１００は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレーヤー、パーソナルディジタルアシスタント（ＰＤＡ）、埋め込み式プロセス制御器、スマート腕時計、パーソナルコミュニケーター、ゲーム装置、ネットワークルータ又はハブ、無線アクセスポイント（ＡＰ）又はリピーター、セットトップボックス、又はそれらの組合せを示してもよい。また、単一の機器又はシステムのみを示したが、用語「機器」又は「システム」は、さらに、独立又は共同で１つ（又は複数）の命令セットを実行することにより本明細書に説明される任意の１種又は複数種の方法を実行する機器又はシステムの任意のセットを含むことを理解すべきである。
【０１１９】
一実施形態において、システム１１００は、バス又は相互接続部材１１１０によって接続されたプロセッサ１１０１、メモリ１１０３及び装置１１０５〜１１０８を備える。プロセッサ１１０１は、単一のプロセッサコア又は複数のプロセッサコアを含む単一のプロセッサ又は複数のプロセッサであってもよい。プロセッサ１１０１は、マイクロプロセッサ、中央処理装置（ＣＰＵ）等のような１つ又は複数の汎用プロセッサであってもよい。より具体的には、プロセッサ１１０１は、複雑命令セット計算（ＣＩＳＣ）マイクロプロセッサ、縮小命令セットコンピュータ（ＲＩＳＣ）マイクロプロセッサ、超長命令語（ＶＬＩＷ）マイクロプロセッサ、又は他の命令セットを実現するプロセッサ、又は命令セットの組合せを実現するプロセッサであってもよい。プロセッサ１１０１は、さらに、専用集積回路（ＡＳＩＣ）、セルラ又はベースバンドプロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタル信号プロセッサ（ＤＳＰ）、ネットワークプロセッサ、グラフィックプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような１つ又は複数の専用プロセッサ、あるいは命令処理可能な任意の他のタイプのロジックであってもよい。
【０１２０】
一実施形態において、プロセッサ１１０１は、少なくとも１つのハードウエアプロセッサを備える。プロセッサ１１０１（超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよい）は、前記システムの各種構成要素と通信するための主処理ユニット及び中央ハブとして用いられてもよい。このようなプロセッサは、システムオンチップ（ＳｏＣ）として実現されることができる。プロセッサ１１０１は、命令を実行することにより本明細書に説明される動作及びステップを実行するための命令を実行するように構成される。また、システム１１００は、選択可能なグラフィックサブシステム１５０４と通信するグラフィックインターフェースをさらに含み、グラフィックサブシステム１５０４は、表示コントローラ、グラフィックプロセッサ及び／又は表示装置をさらに備えてもよい。
【０１２１】
プロセッサ１１０１は、メモリ１１０３と通信してもよく、メモリ１１０３は、一実施形態において複数のメモリによって所定量のシステムメモリを提供する。メモリ１１０３は、ランダムアクセスメモリ（ＲＡＭ）、動的ＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、静的ＲＡＭ（ＳＲＡＭ）又は他のタイプのメモリのような１つ又は複数の揮発性記憶装置（又はメモリ）を備えてもよい。メモリ１１０３は、プロセッサ１１０１又は任意の他の装置により実行される命令列を含む情報を記憶できる。例えば、複数種のオペレーティングシステム、装置ドライバー、ファームウェア（例えば、基本入出力システム又はＢＩＯＳ）及び／又はアプリケーションの実行可能なコード及び／又はデータはメモリ１１０３にロードされてもよく、プロセッサ１１０１により実行される。オペレーティングシステムは、ロボットオペレーティングシステム（ＲＯＳ）、Ｍｉｃｒｏｓｏｆｔ(R)会社からのＷｉｎｄｏｗｓ(R)オペレーティングシステム、アップル会社からのＭａｃ  ＯＳ(R)／ｉＯＳ(R)、Ｇｏｏｇｌｅ(R)会社からのＡｎｄｒｏｉｄ(R)、Ｌｉｎｕｘ、Ｕｎｉｘ又は他のリアルタイム又は組み込みオペレーティングシステムのような任意のタイプのオペレーティングシステムであってもよい。
【０１２２】
システム１１００は、Ｉ／Ｏ装置、例えば装置１１０５〜１１０８をさらに備えてもよく、ネットワークインターフェース装置１１０５、選択可能な入力装置１５０６及び他の選択可能なＩ／Ｏ装置１１０７を備える。ネットワークインターフェース装置１１０５は、無線送受信機及び／又はネットワークインターフェースカード（ＮＩＣ）を備えてもよい。前記無線送受信機は、ＷｉＦｉ送受信機、赤外送受信機、ブルートゥース送受信機、ＷｉＭａｘ送受信機、無線セルラーホン送受信機、衛星送受信機（例えば、全地球測位システム（ＧＰＳ）送受信機）又は他の無線周波数（ＲＦ）送受信機又はそれらの組合せであってもよい。ＮＩＣはイーサネットカードであってもよい。
【０１２３】
入力装置１５０６は、マウス、タッチパッド、タッチスクリーン（それは表示装置１５０４と一体化されてもよい）、ポインタデバイス（例えばスタイラス）及び／又はキーボード（例えば、物理キーボード又はタッチスクリーンの一部として表示された仮想キーボード）を備えてもよい。例えば、入力装置１５０６は、タッチスクリーンに接続されるタッチスクリーンコントローラを含んでもよい。タッチスクリーン及びタッチスクリーンコントローラは、例えば複数種のタッチ感度技術（容量、抵抗、赤外及び表面音波の技術を含むが、それらに限定されない）のいずれか、及びタッチスクリーンの１つ又は複数の接触点を決定するための他の近接センサアレイ又は他の素子を用いてそのタッチ点及び移動又は断続を検出することができる。
【０１２４】
Ｉ／Ｏ装置１１０７は音声装置を備えてもよい。音声装置は、スピーカ及び／又はマイクロホンを含んでもよく、それにより音声認識、音声コピー、デジタル記録及び／又は電話機能のような音声サポートの機能を促進する。他のＩ／Ｏ装置１１０７は、汎用シリアルバス（ＵＳＢ）ポート、パラレルポート、シリアルポート、印刷機、ネットワークインターフェース、バスブリッジ（例えば、ＰＣＩ−ＰＣＩブリッジ）、センサ（例えば、加速度計、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサ等のような動きセンサ）又はそれらの組合せをさらに備えてもよい。装置１１０７は、結像処理サブシステム（例えば、カメラ）をさらに備えてもよく、前記結像処理サブシステムは、カメラ機能（例えば、写真及びビデオ断片の記録）を促進するための電荷カップリング装置（ＣＣＤ）又は相補型金属酸化物半導体（ＣＭＯＳ）光学センサのような光学センサを備えてもよい。あるセンサは、センサハブ（図示せず）によって相互接続部材１１１０に接続されてもよく、キーボード又は熱センサのような他の装置は、組み込みコントローラ（図示せず）により制御されてもよく、これはシステム１１００の特定配置又は設計により決められる。Ｉ／Ｏ装置１１０７は、さらにレーダーシステム（無線探知及び測距）と、ＬＩＤＡＲシステム（光検出及び測距）と、ＧＰＳシステム（全地球位置決めシステム）とを含んでもよく、また、セルラータワーで検出・三角測量できるセルラーホンサブシステム、マイク及び他のオーディオレコーダー／ビデオレコーダー、位置、距離、時間、速度、加速度、水平及び垂直水準器検定器、配向センサ及び方位センサを用いてもよい。
【０１２５】
データ、アプリケーション、１つ又は複数のオペレーティングシステム等のような情報の永続的記憶を提供するために、大容量メモリ（図示せず）は、プロセッサ１１０１に接続されてもよい。様々な実施形態において、薄型化と軽量化のシステム設計を実現しかつシステムの応答能力を向上させるために、このような大容量メモリは、ソリッドステート装置（ＳＳＤ）によってされることが実現できる。なお、他の実施形態において、大容量メモリは、主にハードディスクドライブ（ＨＤＤ）で実現されてもよく、少量のＳＳＤ記憶量は、ＳＳＤキャッシュとして停電イベント期間にコンテキスト状態及び他のこのような情報の不揮発性記憶を実現し、それによりシステム動作が再開する時に通電を速く実現することができる。さらに、フラッシュデバイスは、例えばシリアルペリフェラルインターフェース（ＳＰＩ）によってプロセッサ１１０１に接続されてもよい。このようなフラッシュデバイスは、システムソフトウェアの不揮発性記憶に用いられてもよく、前記システムソフトウェアは、前記システムのＢＩＯＳ（基本入出力システム）及び他のファームウェアを備える。
【０１２６】
記憶装置１１０８は、任意の１種又は複数種の本明細書に記載の方法又は機能を体現する１つ又は複数の命令セット又はソフトウェア（例えば、モジュール、ユニット及び／又はロジック１１２８）が記憶されるコンピュータアクセス可能な記憶媒体１１０９（機械可読記憶媒体又はコンピュータ可読媒体とも呼ばれる）を備えてもよい。処理モジュール／ユニット／ロジック１１２８は、例えば、自律走行車１０１（ＡＶ）の位置決めモジュール３０１、感知モジュール３０２、運転決定モジュール３０３、計画モジュール３０４、制御モジュール３０５、地図更新モジュール３０６、及びセンサデータを処理してＡＶ計画及び制御モジュールを駆動する１つ以上のモジュールのような上記構成要素のいずれかを示してもよい。処理モジュール／ユニット／ロジック１１２８は、さらにデータ処理システム１１００により実行される期間にメモリ１１０３内及び／又はプロセッサ１１０１内に完全又は少なくとも部分的に存在してもよく、ここで、メモリ１１０３及びプロセッサ１１０１も、機器アクセス可能な記憶媒体を構成する。処理モジュール／ユニット／ロジック１１２８は、さらにネットワークによってネットワークインターフェース装置１１０５を経由して送受信されてもよい。
【０１２７】
コンピュータ可読記憶媒体１１０９は、以上に説明されたいくつかのソフトウェア機能を永続的に記憶してもよい。コンピュータ可読記憶媒体１１０９は、例示的な実施形態において単一の媒体として示されたが、用語「コンピュータ可読記憶媒体」は、前記１つ又は複数の命令セットが記憶される単一の媒体又は複数の媒体（例えば、集中型又は分散型データベース、及び／又は関連するキャッシュ及びサーバ）を備えることを理解すべきである。用語「コンピュータ可読記憶媒体」は、さらに命令セットを記憶又はコーディング可能な任意の媒体を備えることを理解すべきであり、前記命令セットは、機器により実行されかつ前記機器に本出願の任意の１種又は複数種の方法を実行させる。従って、用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリ及び光学媒体と磁気媒体又は任意の他の非一時的機械可読媒体を備えるが、それらに限定されないことを理解すべきである。
【０１２８】
本明細書に記載の処理モジュール／ユニット／ロジック１１２８、構成要素及び他の特徴は、ディスクリートハードウェアコンポーネントとして実現されてもよく、又はハードウェアコンポーネント（例えばＡＳＩＣｓ、ＦＰＧＡ、ＤＳＰ又は類似装置）の機能に統合されてもよい。さらに、処理モジュール／ユニット／ロジック１１２８は、ハードウェア装置内のファームウェア又は機能回路として実現されてもよい。また、処理モジュール／ユニット／ロジック１１２８は、ハードウェア装置及びソフトウェアコンポーネントの任意の組合せで実現されてもよい。
【０１２９】
なお、システム１１００は、データ処理システムの各種の構成要素を有するように示されているが、構成要素に相互接続させる任意の具体的な構造又は方式を限定するものではないことに注意すべき、それは、このような詳細が本出願の実施形態に密接な関係がないためである。また、より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ及び／又は他のデータ処理システムは、本出願の実施形態と共に使用されてもよい。
【０１３０】
上記詳細な説明の一部は、コンピュータメモリにおけるデータビットに対する演算のアルゴリズム及び記号表現で示される。これらのアルゴリズムの説明及び表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。ここで、アルゴリズムは、通常、所望の結果につながる首尾一貫した操作列（動作列）（ｓｅｑｕｅｎｃｅ  ｏｆ  ｏｐｅｒａｔｉｏｎｓ）と考えられる。これらの操作（動作）とは、物理量に対して物理的操作（動作）を行う必要となること（ステップ）を指す。
【０１３１】
ただし、これらの全ての及び類似の用語は、いずれも適切な物理量に関連付けられ、かつただこれらの量に適用される適切なラベルであることに注意すべきである。特に断らない限り、本出願の全体にわたって用語（例えば、添付している特許請求の範囲に説明された用語）による説明とは、コンピュータシステム又は類似の電子計算装置の動作及び処理であり、前記コンピュータシステム又は電子計算装置は、コンピュータシステムのレジスタ及びメモリに物理（例えば、電子）量としてデータを示し、かつ前記データをコンピュータシステムメモリ又はレジスタ又は他のこのような情報メモリ、伝送又は表示装置内において類似に物理量として示される他のデータに変換する。
【０１３２】
本出願の実施形態は、さらに本明細書における動作（ステップ／操作）を実行するためのコンピュータプログラムに関する。このようなコンピュータプログラムは、非一時的コンピュータ可読媒体に記憶される。機器可読媒体は、機器（例えば、コンピュータ）可読な形態で情報を記憶する任意の機構を備える。例えば、機器可読（例えば、コンピュータ可読）媒体は、機器（例えば、コンピュータ）可読記憶媒体（例えば、読み出し専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリメモリ）を備える。
【０１３３】
上記図面に示される手順又は方法は、ハードウェア（例えば、回路、専用ロジック等）、ソフトウェア（例えば、非一時的コンピュータ可読媒体に具現化される）、又は両方の組合せを含む処理ロジックにより実行されてもよい。前記手順又は方法は、本明細書において特定の順序に応じて説明されるが、説明された動作の一部は、異なる順序に応じて実行されてもよい。また、いくつかの動作は、順番ではなく並行に実行されてもよい。
【０１３４】
本発明の実施形態は、いずれかの特定のプログラミング言語を参照して説明されていないが、複数種のプログラミング言語で本明細書に記載の本発明の実施形態の教示を実現できることを理解すべきである。
【０１３５】
以上の明細書では、本発明の具体的な例示的な実施形態を参照してその実施形態を説明した。明らかなように、添付している特許請求の範囲に記載の本発明のより広い趣旨及び範囲を逸脱しない限り、様々な変形が可能である。従って、限定的なものではなく例示的なものとして本明細書及び図面を理解すべきである。
【図１】
2018084573.tif 000004
【図２】
2018084573.tif 000005
【図３】
2018084573.tif 000006
【図４Ａ】
2018084573.tif 000007
【図４Ｂ】
2018084573.tif 000008
【図５Ａ】
2018084573.tif 000009
【図５Ｂ】
2018084573.tif 000010
【図６】
2018084573.tif 000011
【図７】
2018084573.tif 000012
【図８】
2018084573.tif 000013
【図９】
2018084573.tif 000014
【図１０】
2018084573.tif 000015
【図１１】
2018084573.tif 000016
【外国語明細書】
2018084573.tif 000017
2018084573.tif 000018
2018084573.tif 000019
2018084573.tif 000020
2018084573.tif 000021
2018084573.tif 000022
2018084573.tif 000023
2018084573.tif 000024
2018084573.tif 000025
2018084573.tif 000026
2018084573.tif 000027
2018084573.tif 000028
2018084573.tif 000029
2018084573.tif 000030
2018084573.tif 000031
2018084573.tif 000032
2018084573.tif 000033
2018084573.tif 000034
2018084573.tif 000035
2018084573.tif 000036
2018084573.tif 000037
2018084573.tif 000038
2018084573.tif 000039
2018084573.tif 000040
2018084573.tif 000041
2018084573.tif 000042
2018084573.tif 000043
2018084573.tif 000044
2018084573.tif 000045
2018084573.tif 000046
2018084573.tif 000047
2018084573.tif 000048
2018084573.tif 000049
2018084573.tif 000050
2018084573.tif 000051
2018084573.tif 000052
2018084573.tif 000053
2018084573.tif 000054
2018084573.tif 000055
2018084573.tif 000056
2018084573.tif 000057
2018084573.tif 000058
2018084573.tif 000059
2018084573.tif 000060
2018084573.tif 000061
2018084573.tif 000062
2018084573.tif 000063
2018084573.tif 000064
2018084573.tif 000065
2018084573.tif 000066
2018084573.tif 000067
2018084573.tif 000068
2018084573.tif 000069
2018084573.tif 000070
2018084573.tif 000071
2018084573.tif 000072
2018084573.tif 000073
2018084573.tif 000074
2018084573.tif 000075
2018084573.tif 000076
2018084573.tif 000077
2018084573.tif 000078
2018084573.tif 000079
2018084573.tif 000080
2018084573.tif 000081
2018084573.tif 000082
2018084573.tif 000083
2018084573.tif 000084
2018084573.tif 000085
2018084573.tif 000086
2018084573.tif 000087
2018084573.tif 000088
2018084573.tif 000089
2018084573.tif 000090
2018084573.tif 000091
2018084573.tif 000092