(57)【要約】      （修正有）【課題】自動運転技術において乗客に不快を与えるおそれがない制御システムを提供する。【解決手段】ＡＤＶの現在速度と現在位置とに応じて目標位置に基づいて制御指令を推定し、推定された制御指令に基づいて、ＡＤＶが到達可能な信頼位置の範囲を決定し、信頼位置の範囲が、ある時点でＡＤＶの周囲の運転環境を感知した感知データに基づいて決定された安全領域内にあるか否かを判断し、ＡＤＶの到達可能な位置が安全領域内にあれば、推定された制御指令がＡＤＶに与えられ、信頼位置の範囲が安全領域外にあれば、他の制御指令を推定し、信頼位置の範囲が安全領域内に入るまで前記過程が繰り返して実行される。【選択図】図９
2018158719.tif 000002
【特許請求の範囲】
【請求項１】
自動運転車両を動作させるためのコンピュータ実施方法であって、
自動運転車両（ＡＤＶ）の目標位置に応答し、前記自動運転車両の現在速度と現在位置とに応じて前記目標位置に基づいて制御指令を推定するステップと、
推定された制御指令に応答し、前記自動運転車両が到達可能な、前記目標位置に関する信頼位置の範囲を決定するステップと、
前記信頼位置の範囲が安全領域内にあるか否かを判断するステップであって、前記安全領域は、ある時点で前記自動運転車両の周囲の運転環境が感知された感知データに基づいて決定されるステップと、
前記信頼位置の範囲が前記安全領域内にあると判断されたことに応答し、前記制御指令を前記自動運転車両に与えるステップと、を含む、
ことを特徴とする方法。
【請求項２】
前記信頼位置の範囲が前記安全領域外にあると判断されたことに応答して、推定された制御指令を調整するステップと、
信頼位置の範囲を決定するステップ及び前記信頼位置の範囲が安全領域内にあるか否かを判断するステップを繰り返して実行するステップと、を更に含む、
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記信頼位置の範囲が前記安全領域内に入るか、又は繰り返し実行される処理の回数が予め設置された閾値に達するまで、前記繰り返して実行されるステップを実行する、
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記目標位置に基づいて制御指令を推定するステップは、
前記自動運転車両の現在位置と現在速度とに基づいて、前記目標位置に達するのに必要な加速度を算出するステップと、
前記現在速度と前記加速度とに基づいて、指令推定テーブルに検索処理を実行して、速度制御指令を推定された制御指令として取得するステップと、を含む、
ことを特徴とする請求項１に記載の方法。
【請求項５】
前記指令推定テーブルは複数のマッピングエントリーを含み、各マッピングエントリーは加速度を推定された制御指令にマッピングする、
ことを特徴とする請求項４に記載の方法。
【請求項６】
各マッピングエントリーは、対応する指令を信頼位置の範囲にマッピングする、
ことを特徴とする請求項５に記載の方法。
【請求項７】
前記目標位置に基づいて制御指令を推定するステップは、
前記自動運転車両の現在位置と現在速度とに基づいて、前記目標位置に達するのに必要なステアリング角の変化を算出するステップと、
前記現在速度と必要なステアリング角の変化とに基づいて、指令推定テーブルに検索処理を実行して、マッチングされたエントリーの位置決めを行うステップと、
マッチングされたエントリーからステアリング制御指令を推定された制御指令として取得するステップと、を含む、
ことを特徴とする請求項１に記載の方法。
【請求項８】
前記指令推定テーブルは複数のマッピングエントリーを含み、
各マッピングエントリーは、ステアリング角の変化を、推定された制御指令と、マッチングされたエントリーから取得された信頼位置の範囲とにマッピングする、
ことを特徴とする請求項７に記載の方法。
【請求項９】
コマンドが記憶されており、前記コマンドがプロセッサにより実行されると、前記プロセッサに以下の処理を実行させる、不発揮性の機械可読媒体であって、
前記処理は、
自動運転車両の目標位置に応答し、前記自動運転車両の現在速度と現在位置とに応じて前記目標位置に基づいて制御指令を推定することと、
推定された制御指令に応答し、前記自動運転車両が到達可能な、前記目標位置に関する信頼位置の範囲を決定することと、
前記信頼位置の範囲が安全領域内にあるか否かを判断するステップであって、前記安全領域は、ある時点で前記自動運転車両の周囲の運転環境が感知された感知データに基づいて決定されることと、
前記信頼位置の範囲が前記安全領域内にあると判断されたことに応答し、前記制御指令を前記自動運転車両に与えることと、を含む、
ことを含むことを特徴とする機械可読媒体。
【請求項１０】
前記処理は、
前記信頼位置の範囲が前記安全領域外にあると判断されたことに応答して、推定された制御指令を調整し、
信頼位置の範囲を決定するステップ及び前記信頼位置の範囲が安全領域内にあるか否かを判断するステップを繰り返して実行する、ことを更に含む、
ことを特徴とする請求項９に記載の機械可読媒体。
【請求項１１】
前記信頼位置の範囲が前記安全領域内に入るか、又は繰り返し実行される処理の回数が予め設置された閾値に達するまで、前記繰り返して実行されるステップを実行する、
ことを特徴とする請求項１０に記載の機械可読媒体。
【請求項１２】
前記目標位置に基づいて制御指令を推定することは、
前記自動運転車両の現在位置と現在速度とに基づいて、前記目標位置に達するのに必要な加速度を算出し、
前記現在速度と前記加速度とに基づいて、指令推定テーブルに検索処理を実行して、速度制御指令を推定された制御指令として取得する、ことを含む、
ことを特徴とする請求項９に記載の機械可読媒体。
【請求項１３】
前記指令推定テーブルは複数のマッピングエントリーを含み、各マッピングエントリーは加速度を推定された制御指令にマッピングする、
ことを特徴とする請求項１２に記載の機械可読媒体。
【請求項１４】
各マッピングエントリーは、対応する指令を信頼位置の範囲にマッピングする、
ことを特徴とする請求項１３に記載の機械可読媒体。
【請求項１５】
前記目標位置に基づいて制御指令を推定することは、
前記自動運転車両の現在位置と現在速度とに基づいて前記目標位置に達するのに必要なステアリング角の変化を算出し、
前記現在速度と必要なステアリング角の変化とに基づいて指令推定テーブルに検索処理を実行してマッチングされたエントリーの位置決めを行い、
マッチングされたエントリーからステアリング制御指令を推定された制御指令として取得すること、
を含む、ことを特徴とする請求項９に記載の機械可読媒体。
【請求項１６】
前記指令推定テーブルは複数のマッピングエントリーを含み、各マッピングエントリーは、ステアリング角の変化を、推定された制御指令と、マッチングされたエントリーから取得された信頼位置の範囲とにマッピングする、
ことを特徴とする請求項１５に記載の機械可読媒体。
【請求項１７】
プロセッサと、
前記プロセッサに連結されてコマンドを記憶するメモリと、を含み、
前記メモリがプロセッサにより実行されると、前記プロセッサに以下の処理を実行させる、データ処理システムであって、
前記処理は、
自動運転車両の目標位置に応答し、前記自動運転車両の現在速度と現在位置とに応じて前記目標位置に基づいて制御指令を推定することと、
推定された制御指令に応答し、前記自動運転車両が到達可能な、前記目標位置に関する信頼位置の範囲を決定することと、
前記信頼位置の範囲が安全領域内にあるか否かを判断するステップであって、前記安全領域は、ある時点で前記自動運転車両の周囲の運転環境が感知された感知データに基づいて決定されることと、
前記信頼位置の範囲が前記安全領域内にあると判断されたことに応答し、前記制御指令を前記自動運転車両に与えることと、を含む、
ことを特徴とするシステム。
【請求項１８】
前記処理は、
前記信頼位置の範囲が前記安全領域外にあると判断されたことに応答して、推定された制御指令を調整し、
信頼位置の範囲を決定するステップ及び前記信頼位置の範囲が安全領域内にあるか否かを判断するステップを繰り返して実行する、ことを更に含む、
ことを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記信頼位置の範囲が前記安全領域内に入るか、又は繰り返し実行される処理の回数が予め設置された閾値に達するまで、前記繰り返して実行されるステップを実行する、
ことを特徴とする請求項１８に記載のシステム。
【請求項２０】
前記目標位置に基づいて制御指令を推定することは、
前記自動運転車両の現在位置と現在速度とに基づいて前記目標位置に達するのに必要な加速度を算出し、
前記現在速度と前記加速度とに基づいて、指令推定テーブルに検索処理を実行して、速度制御指令を推定された制御指令として取得する、ことを含む、
ことを特徴とする請求項１８に記載のシステム。
【請求項２１】
前記指令推定テーブルは複数のマッピングエントリーを含み、各マッピングエントリーは加速度を推定された制御指令にマッピングする、
ことを特徴とする請求項２０に記載のシステム。
【請求項２２】
各マッピングエントリーは、対応する指令を信頼位置の範囲にマッピングする、
ことを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記目標位置に基づいて制御指令を推定することは、
前記自動運転車両の現在位置と現在速度とに基づいて前記目標位置に達するのに必要なステアリング角の変化を算出し、
前記現在速度と必要なステアリング角の変化とに基づいて指令推定テーブルに検索処理を実行してマッチングされたエントリーの位置決めを行い、
マッチングされたエントリーからステアリング制御指令を推定された制御指令として取得すること、を含む、
ことを特徴とする請求項１７に記載のシステム。
【請求項２４】
前記指令推定テーブルは複数のマッピングエントリーを含み、各マッピングエントリーは、ステアリング角の変化を、推定された制御指令と、マッチングされたエントリーから取得された信頼位置の範囲とにマッピングする、
ことを特徴とする請求項２３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は主に自動運転車両のに関する。具体的に、本発明の実施形態は自動運転車両に用いられる制御的な計画と制御システムに関する。
【背景技術】
【０００２】
車両が自動運転モード（例えば、無人運転）で走行している場合、乗員、特に運転手を運転に関連するいくつかの責任から解放することができる。自動運転モードで走行している場合、当該車両が車載センサを利用して様々な場所へ案内されることができ、それによりヒューマン・インタラクションの最も少ない場合、または乗客なしの場合に走行することを可能にする。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
自動運転において、運動計画及び制御は重要である。通常の計画及び制御システムにおいて、従来の自動運転技術は計画型（planning dominated）であり、計画段階で経路と速度を決定し、制御段階で当該決定の実行だけを行うことを意味する。図１Ａは、例えば計画モジュールにより計画された自動運転車両に用いられる計画速度を示した。ところが、図１Ｂに示されるように、このような設計は制御において避けられない振動を招き、乗客に不快を与える恐れがある。図１Ｂに示されるように、図１Ａに示される計画速度のスロットル指令は平滑でなく、或いは非線形であるので、乗客に不快を与えるおそれがある。
【課題を解決するための手段】
【０００４】
本願の一態様は、自動運転車両を動作させるためのコンピュータ実施方法を提供し、この方法は、自動運転車両の目標位置に応答し、前記自動運転車両の現在速度と現在位置とに応じて前記目標位置に基づいて制御指令を推定するステップと、推定された制御指令に応答し、前記自動運転車両が到達可能な、前記目標位置に関する信頼位置の範囲を決定するステップと、前記信頼位置の範囲が安全領域内にあるか否かを判断するステップであって、前記安全領域は、ある時点で前記自動運転車両の周囲の運転環境が感知された感知データに基づいて決定されるステップと、前記信頼位置の範囲が前記安全領域内にあると判断されたことに応答し、前記制御指令を前記自動運転車両に与えるステップと、を含む。
【０００５】
本願の他の態様は、コマンドが記憶されており、前記コマンドがプロセッサにより実行されると、前記プロセッサに以下の処理を実行させる、不発揮性の機械可読媒体を提供し、この処理は、自動運転車両の目標位置に応答し、前記自動運転車両の現在速度と現在位置とに応じて前記目標位置に基づいて制御指令を推定することと、推定された制御指令に応答し、前記自動運転車両が到達可能な、前記目標位置に関する信頼位置の範囲を決定することと、前記信頼位置の範囲が安全領域内にあるか否かを判断するステップであって、前記安全領域は、ある時点で前記自動運転車両の周囲の運転環境が感知された感知データに基づいて決定されることと、前記信頼位置の範囲が前記安全領域内にあると判断されたことに応答し、前記制御指令を前記自動運転車両に与えることと、を含む。
【０００６】
本願の他の態様は、プロセッサと、前記プロセッサに連結されてコマンドを記憶するメモリと、を含み、前記メモリがプロセッサにより実行されると、前記プロセッサに以下の処理を実行させる、データ処理システムを提供し、この処理は、自動運転車両の目標位置に応答し、前記自動運転車両の現在速度と現在位置とに応じて前記目標位置に基づいて制御指令を推定することと、推定された制御指令に応答し、前記自動運転車両が到達可能な、前記目標位置に関する信頼位置の範囲を決定することと、前記信頼位置の範囲が安全領域内にあるか否かを判断するステップであって、前記安全領域は、ある時点で前記自動運転車両の周囲の運転環境が感知された感知データに基づいて決定されることと、前記信頼位置の範囲が前記安全領域内にあると判断されたことに応答し、前記制御指令を前記自動運転車両に与えることと、を含む。
【図面の簡単な説明】
【０００７】
本発明の実施形態は図面の各図において限定的ではなく例示的な形態で示され、図面における同じ図面符号が類似した素子を示す。
【０００８】
【図１Ａ】速度制御指令と車両からの応答を示す図である。
【図１Ｂ】速度制御指令と車両からの応答を示す図である。
【０００９】
【図２】本発明にかかる一実施形態のネットワークシステムを示すブロック図である。
【図３】本発明にかかる一実施形態の自動運転車両の例を示すブロック図である。
【図４】本発明にかかる一実施形態の自動運転車両と共に使用される感知及び計画システムの例を示すブロック図である。
【００１０】
【図５Ａ】本発明にかかる幾つかの実施形態の速度制御指令と車両応答を示す図である。
【図５Ｂ】本発明にかかる幾つかの実施形態の速度制御指令と車両応答を示す図である。
【００１１】
【図６Ａ】本発明にかかる幾つかの実施形態のステアリング制御指令と車両応答を示す図である。
【図６Ｂ】本発明にかかる幾つかの実施形態のステアリング制御指令と車両応答を示す図である。
【００１２】
【図７】本発明にかかる一実施形態の計画モジュールと制御モジュールとの間の通信を示す処理フローチャートである。
【００１３】
【図８Ａ】本発明にかかる幾つかの実施形態の指令推定データ構造を示した。
【図８Ｂ】本発明にかかる幾つかの実施形態の指令推定データ構造を示した。
【００１４】
【図９】本発明にかかる一実施形態の自動運転車両の手順を示すフローチャートである。
【図１０】一実施形態にかかるデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【００１５】
以下、説明の詳細を参照しながら、本出願の様々な実施形態及び方法を説明し、図面は、前記様々な実施形態を示す。以下の説明及び図面は、本出願を説明するためのものであり、本出願を限定するものではない。本出願の様々な実施形態を完全に把握するために、多数の特定の詳細を説明する。なお、いくつかの例では、本出願の実施形態に対する簡単な説明を提供するために、周知または従来技術の詳細について説明していない。
【００１６】
本明細書では「一実施形態」または「実施形態」とは、当該実施形態について組み合わせて説明された特定特徴、構造または特性が、本出願の少なくとも一実施形態に含まれてもよい。語句「一実施形態では」は、本明細書全体において同一の実施形態を指すとは限らない。
【００１７】
幾つかの実施形態によれば、制御型（control dominated）のシステムは、乗客の快適さを最大化するように配置される。自動運転車両（ＡＤＶ）の経路又は位置の精度に妥協することにより（ＡＤＶ周囲の運転環境を考慮した前提であれば、このような折衷案はＡＤＶを不安全の状態にさせることがない）、システムはＡＤＶに着席する乗客の快適性に注目する。システムは、類似の状況において人間の運転者がどのように行動するかをシミュレーションする。通常的に、人間の運転者は、アクセルペダル又はブレーキペダルを踏み込んで制御指令を与え、その後に車両の移動が速すぎるか、遅すぎるか又は障害物（例えば、歩行者、他の車両、建築のような実際の目標）に近接しすぎるかを判断する。このようになれば、運転者は、アクセルペダル又はブレーキペダルに付与される圧力を調整したりハンドルの旋回を調整したりすることで、ＡＤＶに所望の位置に到達させる。
【００１８】
一実施形態では、ＡＤＶの目標位置に応答し、ＡＤＶの現在速度と現在位置とに応じて、目標位置に基づいて制御指令（例えば、速度制御指令、ステアリング制御指令）を推定する。推定された制御指令に基づいて、ＡＤＶの到達可能な信頼（confidence）位置の範囲を決定する。信頼位置の範囲をチェックして信頼位置の範囲が安全領域内にあるか否かを判断する。安全領域は、ある時点でＡＤＶ周囲の運転環境が感知された感知データに基づいて決定されたものである。推定された制御指令に応答してＡＤＶの到達可能な位置が安全領域内にあると判断された場合、推定された制御指令がＡＤＶに与えられる。信頼位置の範囲が安全領域外にあると判断された場合、前に推定された制御指令に基づいて他の制御指令を推定（例えば、調整）し、信頼位置の範囲が安全領域内に入るまで前記過程が繰り返して実行される。
【００１９】
一実施形態では、システムはＡＤＶの目標位置、現在位置と現在速度から導出される情報に基づいて、指令推定テーブルに検索を実行する。指令推定テーブルは、複数のエントリーを含む。各エントリーは、複数の推定された制御指令のうちの一つに対応し、且つ各推定された制御指令は信頼位置の範囲に関連付けられる。このような信頼位置の範囲は、データ解析システムにより多くの運転統計（例えば、複数の人間の運転者により複数種の車両を使用する）に基づいてオフラインで決定されたり、訓練されたりすることができる。
【００２０】
一実施形態では、制御モジュールは制御指令を推定して且つＡＤＶの到達可能な信頼位置の範囲を決定すると、信頼位置に関する情報が計画モジュールにフィードバックされる。計画モジュールは、信頼位置の範囲が安全領域内に入るか否かを判断する。なお、当該安全領域は、計画モジュールによりＡＤＶ周囲の運転環境を感知する感知モジュールに提供される感知データに基づいて生成されるものである。計画モジュールと制御モジュールの間の通信は、適切な制御指令が発見されるまで繰り返して実行される。複数回に繰り返された後に適切な制御指令が存在しなければ、制御モジュールは通常のモードに戻して計画モジュールから受信される目標に基づいて制御指令を決定し、且つできるだけ計画モジュールにより提供される経路に沿ってＡＤＶを運転しようと試みる。
【００２１】
図２は本発明にかかる一実施形態にかかる自動運転車両のネットワーク配置を示すブロック図である。図２を参照して、ネットワーク配置１００はネットワーク１０２によって１つ以上のサーバ１０３〜１０４に通信可能に接続することができる自動運転車両１０１を含む。１つの自動運転車両が示されているが、ネットワーク１０２によって複数の自動運転車両は互いに接続され、及び／またはサーバ１０３〜１０４に接続されることができる。ネットワーク１０２は、任意のタイプのネットワーク、例えば有線または無線のローカルエリアネットワーク（ＬＡＮ）、例えばインターネットのような広域ネットワーク（ＷＡＮ）、セルラーネットワーク、衛星ネットワークまたはその組み合わせであってもよい。サーバ１０３〜１０４は任意のタイプのサーバまたはサーバクラスタ、例えばＷｅｂサーバまたはクラウドサーバ、アプリケーションサーバ、バックエンドサーバまたはその組み合わせであってもよい。サーバ１０３〜１０４は、データ分析サーバ、内容サーバ、交通情報サーバ、地図（マップ）及び興味のあるポイント（ＭＰＯＩ）サーバまたは位置サーバ等であってもよい。
【００２２】
自動運転車両とは、運転手からの入力が非常に少ないまたはない場合に案内して環境を通過する自動運転モードに設置される車両である。このような自動運転車両は、車両が走行している環境にかかる情報を検出するように配置される１つまたは複数のセンサを含むセンサシステムを備える。車両及びその関連しているコントローラが、検出された情報で案内して環境を通過する。自動運転車両１０１が手動モード、完全自動運転モードまたは部分自動運転モードで運転されることができる。
【００２３】
一実施形態では、自動運転車両１０１は、感知及び計画システム１１０と、車両制御システム１１１と、無線通信システム１１２と、ユーザインターフェースシステム１１３と、センサシステム１１５とを含むが、これらに制限されない。自動運転車両１０１は、通常の車両に含まれるある一般的な構成要素（部材）、例えばエンジン、車輪、ハンドル、変速器等をさらに含んでもよく、前記構成要素は、車両制御システム１１１及び／または感知及び計画システム１１０により多種の通信信号及び／またはコマンド（例えば加速信号またはコマンド、減速信号またはコマンド、ステアリング信号またはコマンド、ブレーキ信号またはコマンド等）を使用して制御されることができる。
【００２４】
構成要素１１０〜１１５は、インターコネクト、バス、ネットワークまたはそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素１１０〜１１５は、コントローラローカルエリアネットワーク（ＣＡＮ）バスを介して互いに通信可能に接続することができる。ＣＡＮバスは、マイクロコントローラ及び装置がホストコンピューターのない応用において互いに通信することを許可するような車両バス標準として設計される。それは、最初に自動車内における多重（multiplex）電線のために設計されたメッセージに基づくプロトコルであるが、他のたくさんの環境（状況）にも用いられる。
【００２５】
ここで、図３を参照して、一実施形態では、センサシステム１１５は、１つ以上のカメラ２１１と、全地球測位システム（ＧＰＳ）ユニット２１２と、慣性計測ユニット（ＩＭＵ）２１３と、レーダーユニット２１４と、光検出及び測距（ＬＩＤＡＲ）ユニット２１５とを含むが、これらに制限されない。ＧＰＳシステム２１２は、送受信機を含んでもよく、前記送受信機は、自動運転車両の位置に関する情報を提供するようにされることができる。ＩＭＵユニット２１３は、慣性加速度に基づいて自動運転車両の位置及び方向の変化を感知することができる。レーダーユニット２１４は、無線信号を利用して自動運転車両のローカル環境内の対象を感知するシステムを示すことができる。いくつかの実施形態において、対象を感知する以外、レーダーユニット２１４は、さらに対象の速度及び／または走行方向を感知することができる。ＬＩＤＡＲユニット２１５はレーザを使用して自動運転車両の所在する環境における対象を感知することができる。その他のシステム構成要素以外、ＬＩＤＡＲユニット２１５は１つ以上のレーザ光源、レーザースキャナ及び１つ以上の検出器をさらに含んでもよい。カメラ２１１は、自動運転車両の周辺環境の画像をキャプチャするための１つ以上の装置を含んでもよい。カメラ２１１は、スチルカメラ及び／またはビデオカメラであってもよい。カメラは、例えば回転及び／または傾斜のプラットフォームに取り付けられる、機械的に移動可能なものであってもよい。
【００２６】
センサシステム１１５は、その他のセンサ、例えばソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ（例えばマイクロフォン）をさらに含んでもよい。オーディオセンサは、自動運転車両周辺の環境から音をキャプチャするように配置されてもよい。ステアリングセンサは、ハンドル、車両の車輪またはその組み合わせのステアリング角を感知するように配置されることができる。スロットルセンサ及びブレーキセンサは、それぞれ車両のスロットル位置及びブレーキ位置を感知する。いくつかの場合、スロットルセンサ及びブレーキセンサは、集積型スロットル／ブレーキセンサに一体化されてもよい。
【００２７】
一実施形態では、車両制御システム１１１は、ステアリングユニット２０１と、スロットルユニット２０２（加速ユニットとも呼ばれる）と、ブレーキユニット２０３とを含むが、これらに制限されない。ステアリングユニット２０１は、車両の方向または走行方向を調整することに用いられる。スロットルユニット２０２は、モーターまたはエンジンの速度を制御して、さらに車両の速度及び加速度を制御することに用いられる。ブレーキユニット２０３は、摩擦を提供することによって車両の車輪またはタイヤをスローダウンして車両を減速させることに用いられる。注意すべきなのは、図２に示すような構成要素はハードウェア、ソフトウェアまたはその組み合わせで実現されることができる。
【００２８】
図２を再び参照して、無線通信システム１１２は、自動運転車両１０１と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを可能にする。例えば、無線通信システム１１２は、１つ以上の装置に直接にまたは通信ネットワークを介して無線通信し、例えばネットワーク１０２によってサーバ１０３〜１０４に通信することができる。無線通信システム１１２は、任意のセルラー通信ネットワークまたは無線ローカルエリアネットワーク（ＷＬＡＮ）（例えばＷｉＦｉ（登録商標））を使用して他の構成要素やシステムに通信することができる。無線通信システム１１２は、例えば赤外線リンク、ブルートゥース（登録商標）等を使用して装置（例えば、乗客の移動装置、表示装置、車両１０１内のスピーカー）に直接に通信することができる。ユーザインターフェースシステム１１３は、車両１０１内で実行される周辺装置の一部であってもよく、例えばキーボード、タッチスクリーンディスプレイ装置、マイクロフォン、及びスピーカー等を含む。
【００２９】
自動運転車両１０１の一部または全ての機能は、特に自動運転モードで処理される場合、感知及び計画システム１１０により制御されたり管理されたりすることができる。感知及び計画システム１１０は、必要なハードウェア（例えば、プロセッサ、メモリ、記憶装置）、及びソフトウェア（例えば、オペレーティングシステム、計画及びルーティングプログラム）を含み、センサシステム１１５、車両制御システム１１１、無線通信システム１１２、及び／またはユーザインターフェースシステム１１３から情報を受信し、受信された情報を処理し、出発地から目的地までのルートや経路を計画し、そして計画及び制御情報に基づいて車両１０１を運転させる。あるいは、感知及び計画システム１１０と車両制御システム１１１とは一体化されてもよい。
【００３０】
例えば、乗客とするユーザは、例えばユーザインターフェースによって旅程の出発位置及び目的位置を指定することができる。感知及び計画システム１１０は旅程関連データを取得する。例えば、感知及び計画システム１１０は、ＭＰＯＩサーバから位置及びルート情報を取得することができ、前記ＭＰＯＩサーバはサーバ１０３〜１０４の一部であってもよい。位置サーバは、位置サービスを提供し、かつＭＰＯＩサーバはマップサービス及びある位置のＰＯＩを提供する。あるいは、このような位置及びＭＰＯＩ情報は、感知及び計画システム１１０の不揮発性記憶装置にローカルにキャッシュされることができる。
【００３１】
自動運転車両１０１がルートに沿って走行する期間に、感知及び計画システム１１０は、さらに交通情報システムやサーバ（ＴＩＳ）からリアルタイム交通情報を取得できる。注意すべきなのは、サーバ１０３〜１０４は、第三者エンティティにより動作されることができる。あるいは、サーバ１０３〜１０４の機能は、感知及び計画システム１１０と一体化されてもよい。リアルタイム交通情報、ＭＰＯＩ情報、位置情報、及びセンサシステム１１５が検出または感知したリアルタイムなローカル環境データ（例えば、障害物、対象、付近車両）に基づいて、感知及び計画システム１１０は、安全で効果的に指定した目的地に到達するように、最適なルートを計画し、かつ計画したルートにより例えば車両制御システム１１１を介して車両１０１を運転することができる。
【００３２】
サーバ１０３は、様々のクライアントにデータ分析サービスを提供するデータ分析システムであってもよい。一実施形態では、データ分析システム１０３は、データ収集部１２１と、機器学習エンジン１２２とを含む。データ収集部１２１は、様々の車両（自動運転車両または人間運転手が運転する一般車両）からの運転統計情報１２３を収集する。運転統計情報１２３は、発行された運転情報（例えば、スロットル、ブレーキ及び転向コマンド）、及び、異なる時点で車両のセンサにより取得された車両のレスポンス（例えば、速度、加速度、減速度、方向）を表す情報を含む。運転統計情報１２３は、異なる時点での環境記述情報、例えば、ルート（出発地及び目的地の位置）、ＭＰＯＩｓ、道路条件、天気条件等を更に含む。
【００３３】
運転統計１２３に基いて、機器学習エンジン１２２は、複数種の目的について規則、アルゴリズム及び／又は予測モデル１２４のセットを実行したり訓練したりする。一実施形態では、規則１２４は、制御指令を推定するための指令推定テーブル又はデータ構造、及びそれらと関連する信頼位置の範囲を含む。指令推定テーブルは、運転統計１２３に基いて生成されてもよい。当該運転統計１２３は、既に複数の人間の運転者又は自動運転システムにより運転された複数種の車両から採集されてもよい。指令推定テーブルは、各タイプの車両について生成し配置されてもよい。そして、指令推定テーブルは、対応のＡＤＶにロードされて制御指令を推定するようにリアルタイムで用いられる。
【００３４】
図４は、本発明の一つの実施例にかかる自動車両とともに使用される感知及び計画システムの例を示すブロック図である。システム３００は、図２における自動運転車両１０１の一部として実現されることができるが、感知及び計画システム１１０、車両制御システム１１１、及びセンサシステム１１５に限定されない。図４を参照し、感知及び計画システム１１０は、位置決めモジュール３０１と、感知モジュール３０２と、決定モジュール３０３と、計画モジュール３０４と、制御モジュール３０５とを含むが、それらに限定されない。
【００３５】
モジュール３０１〜３０５の一部またはすべては、ソフトウェア、ハードウェア、またはそれらの組み合わせによって実現されてもよい。例えば、これらのモジュールが不揮発性の記憶装置３５２にインストールされ、メモリ３５１にロードされて１つまたは複数のプロセッサ（図示せず）によって実行されてもよい。一部またはすべてのモジュールは、図３に示す車両制御システム１１１における一部またはすべてのモジュールに通信可能に連結されたり、統合されたりしてもよい。また、モジュール３０１〜３０５の一部、１つの集積モジュールとして一体化されてもよい。
【００３６】
位置決めモジュール３０１は、自動運転車両３００（例えば、ＧＰＳユニット２１２を利用する）の現在の位置を決定し、ユーザの旅程またはルートに関する何れのデータを管理する。位置決めモジュール３０１（地図及びルーティングモジュールとも言われる）は、ユーザの旅程またはルートに関連する任意のデータを管理する。ユーザは、例えばユーザインターフェースを介してログインするとともに旅程の出発位置及び目的位置を指定してもい。位置決めモジュール３０１は、旅程に関連するデータを取得するように、自動運転車両３００（システム）のその他の構成要素（例えば地図及びルート情報３１１）と通信する。例えば、位置決めモジュール３０１は、位置サーバと、地図及びＰＯＩ（ＭＰＯＩ）サーバから位置及びルート情報を取得することができる。位置サーバは、位置サービスを提供し、かつＭＰＯＩサーバは、地図サービスとある位置のＰＯＩとを提供し、地図及びルート情報３１１の一部としてキャッシュされてもよい。自動運転車両３００がルートに沿って走行する期間に、位置決めモジュール３０１は、さらに交通情報システムやサーバからリアルタイム交通情報を取得することができる。
【００３７】
センサシステム１１５により提供されたセンサデータ、及び位置決めモジュール３０１により得られた位置決め情報に基づいて、感知モジュール３０２は周辺環境に対する感知を決定する。感知情報は、普通の運転者が自分で運転している車両周辺から感知したもの（状況）を示すことができる。感知情報は、例えば対象形式で現される車線配置（例えば、直線またはカーブ）、トラフィック信号、他の車両の相対位置、歩行者、建築物、横断歩道またはその他の交通関連標識（例えば、停止標識、譲り標識）などを含んでもよい。
【００３８】
感知モジュール３０２は、コンピュータビジョンシステムまたはコンピュータビジョンシステムの機能を含んでもよく、自動運転車両環境における対象及び／または特徴を認識するように、１つ以上のカメラによりキャプチャされた画像を処理及び分析することに用いられる。前記対象は交通信号、車道の境界線、他の車両、歩行者及び／または障害物等を含んでもよい。コンピュータビジョンシステムは、対象認識アルゴリズム、ビデオトラッキング及びその他のコンピュータビジョン技術を使用することができる。いくつかの実施形態において、コンピュータビジョンシステムは、環境の地図を描き、対象を追跡し、かつ対象の速度を推定することなどができる。感知モジュール３０２は、その他のセンサ（例えばレーダー及び／またはＬＩＤＡＲ）により提供されたその他のセンサデータに基づいて対象を検出することもできる。
【００３９】
それぞれの対象に対して、決定モジュール３０３は、如何に対象を処理するか決定をする。例えば、特定な対象（例えば、交差ルートにおける他の車両）及び対象を記述するメタデータ（例えば、速度、方向、ステアリング角）に対して、決定モジュール３０３は、遇う対象に如何に対応する（例えば、追い越し、道譲り、停止、通過）ことを決定する。決定モジュール３０３は、不揮発性の記憶装置３５２に記憶されてもよい１セットのルール（例えば交通ルールまたは運転ルール３１２）に基づいてこのような決定をすることができる。
【００４０】
感知されたそれぞれの対象に対する決定に基づいて、計画モジュール３０４は、自動運転車両のためにルートまたは経路及び運転パラメータ（例えば、距離、速度及び／またはステアリング角）を計画する。すなわち、所定対象に対して、決定モジュール３０３は前記対象に対して如何に対応するかを決定し、計画モジュール３０４は如何に実行するかを決定する。例えば、所定対象に対して、決定モジュール３０３は、前記対象を追い越すことを決定することができ、計画モジュール３０４は、前記対象の左側に追い越すか、右側に追い越すかを決定することができる。計画モジュール３０４は、計画及び制御データを生成し、車両３００が次の移動周期（例えば、次のルート／経路セグメント）に如何に移動するかを記述する情報を含む。例えば、計画及び制御データは車両３００が３０マイル／時間（ｍｐｈ）の速度で１０メートル移動し、次に２５ｍｐｈの速度で右車線に変更するように指示することができる。
【００４１】
計画及び制御データに基づいて、制御モジュール３０５は計画及び制御データにより定義されたルートまたは経路に基づいて、車両制御システム１１１へ適切なコマンドまたは信号を送信することによって自動運転車両を制御及び運転する。前記ルートまたは経路に沿って違う時点で適ときに適切な車両設置または運転パラメータ（例えば、スロットル、ブレーキ及びステアリングコマンド）を使用して車両を第１点から第２点まで運転するように、計画及び制御データは十分な情報を含む。
【００４２】
注意すべきなのは、決定モジュール３０３及び計画モジュール３０４は、集積モジュールに一体化されてもよい。決定モジュール３０３／計画モジュール３０４は、自動運転車両の運転経路を決定するために、ナビゲーションシステムまたはナビゲーションシステムの機能を含んでもよい。例えば、ナビゲーションシステムは、自動運転車両が以下の経路に沿って移動することを実現するための一連の速度及び進行方向を決定することができ、前記経路は、最終目的地に至る道路に基づく経路に沿って自動運転車両を大体前進するとともに、感知された障害物を大体避けることができる。目的地はユーザインターフェースシステム１１３により実現されたユーザ入力に基づいて設定されることができる。ナビゲーションシステムは、自動運転車両が走行していると同ときに走行経路を動的に更新することができる。ナビゲーションシステムは、自動運転車両用の走行経路を決定するように、ＧＰＳシステム及び１つ以上の地図からのデータを合併することができる。
【００４３】
決定モジュール３０３／計画モジュール３０４は、自動運転車両環境における潜在障害物を、認識・評価・回避またはその他の方式で迂回するために、衝突回避システムまたは衝突回避システムの機能をさらに含んでもよい。例えば、衝突回避システムは、以下の方式によって自動運転車両のナビゲーションにおける変更を実現することができ、制御システム１１１の中の１つ以上のサブシステムを動作してターン操縦、ステアリング操縦、ブレーキ操縦等を採る。衝突回避システムは、周辺の交通モード、道路状況等に基づいて障害物を回避可能な操縦を自動的に決定することができる。衝突回避システムは、その他のセンサシステムは、自動運転車両がターンして入ろうとする隣接領域における車両、建築障害物等が検出された際にターン操縦を採らないように配置されることができる。衝突回避システムは、使用可能でありかつ自動運転車両の乗員の安全性を最大化させる操縦を自動的に選択することができる。衝突回避システムは、自動運転車両の乗員室内で最小の加速度を出現させることが予測された回避操縦を選択することができる。
【００４４】
一実施形態によれば、制御モジュール３０５は、速度制御モジュール３２１とステアリング制御モジュール３２２とを具備する。速度制御モジュール３２１は、速度制御指令（例えば、スロットル指令、ブレーキ指令）を生成してＡＤＶの速度を制御するように配置される。ステアリングモジュール３２２は、ステアリング制御指令を生成してＡＤＶのステアリングを制御する（例えば、車両の移動方向を変更する）ように配置される。一実施形態では、速度制御モジュール３２１は、計画モジュール３０４から受信される目標情報（例えば、目標位置、目標速度、目標ステアリング角度）に応答し、目標情報に基づいて速度制御指令を推定し、且つ推定された速度制御指令が実行される場合にＡＤＶの終了可能な信頼位置の範囲を決定する。同様に、ステアリング制御モジュール３２２は、ステアリング制御指令を推定し、推定されたステアリング制御指令が実行される場合にＡＤＶの到達可能な信頼位置の範囲を決定する。
【００４５】
図５Ａと図５Ｂを参照し、図５Ａは速度制御モジュール３２１により推定された速度制御指令を表す曲線を示し、ここで、速度制御指令は、ある時間帯においてスロットルのパーセンテージで表された。人間の運転者がどのようにアクセルペダルへ圧力を与えるかと類似しており、曲線は相対的な線形曲線である。図５Ｂは、図５Ａに示された推定された速度制御指令に応答して車両が到達可能な推定速度を示す。図５Ｂに示されるように、ＡＤＶの速度は曲線５０１と曲線５０２との間に変化することができる。曲線５０１と曲線５０２の間の領域は、車両の終了可能な信頼速度の範囲を示す。信頼速度の範囲は、予め設置された時間帯におけるＡＤＶの現在位置に基づいて目標位置と関連する信頼位置の範囲を決定するように使用可能である。目標位置及び目標位置まで到達する時間帯は、計画モジュール３０４から受信される目標情報の一部であってもよい。信頼位置の範囲は、ＡＤＶが終了可能なことが相対的に信頼できる又は確信する位置の範囲を表す信頼位置の範囲とも呼ばれる。同様に、図６Ａ〜図６Ｂを参考し、図６Ａはステアリング角のパーセンテージで示されたステアリング制御指令を表す曲線を示し、図６Ｂは推定された制御指令に応答してＡＤＶが到達可能な信頼位置の範囲を表す曲線６０１と曲線６０２の間の領域を示した。
【００４６】
図４を再び参考し、制御モジュール３０５は信頼位置情報を計画モジュール３０４にフィードバックする。一実施形態では、計画モジュール３０４は、安全領域に基いてＡＤＶの到達可能な位置を表す信頼位置の範囲が安全かをチェックする安全検査器モジュール３２３を更に具備する。安全検査器モジュール３２３は、ある時点でＡＤＶ周囲の運転環境が感知された感知データに基いて安全領域を決定することができる。安全領域はその内にＡＤＶが安全である位置の範囲を示す。即ち、安全領域において、ＡＤＶがなり得る危険な状況（例えば、他の車両、歩行者又は対象と衝突する）でない。安全検査器モジュール３２３は信頼位置の範囲と安全領域とを比較し、信頼位置が安全領域内にあるか否かを判断する。信頼位置の範囲が安全領域内であれば、推定された制御指令（例えば、アクセル指令、ブレーキ指令又はステアリング指令）がＡＤＶに与えられる。さもなければ、推定された制御指令を調整し、且つ上記の過程が繰り返されて、ＡＤＶを安全にする適切な制御指令を発見することを試みる。
【００４７】
図７は、本発明の一実施形態にかかる計画モジュールと制御モジュールとの間の通信を示した処理フローチャートである。図７を参照し、７０１において、計画モジュール３０４は計画及び制御データを計画し且つ計画及び制御データを制御モジュール３０５に送信する。計画及び制御データは、ＡＤＶが達する予定の目標情報を含み、ここで、当該目標情報は、目標位置、目標速度及び／又は目標ステアリング角度などを含んでもよい。代わりに、計画及び制御データは、ある時間帯にＡＤＶが到達する目標位置又はある時間内に変更される車線などを示すことができ、且つ制御モジュール３０５により計画目標まで所要の目標速度又はステアリング角が決定される。７０２において、制御モジュール３０５（例えば、速度制御モジュール３２１及び／又はステアリング制御モジュール３２２）は目標情報に応答し、目標情報に基づいて制御指令（例えば、速度制御指令、ステアリング制御指令）を推定する。７０３において、制御モジュール３０５は推定された制御指令に応答してＡＤＶが到達可能な信頼位置の範囲を決定する。
【００４８】
上記のように、制御指令は速度制御指令又はステアリング制御指令であってもよい。一実施形態によれば、速度制御指令を推定する際に、速度制御モジュール３２１は速度指令推定テーブル又はデータ構造に検索を実行する。なお、速度指令推定テーブル又はデータ構造は、ルール１２４の一部であってもよい。図８Ａは、本発明の一実施形態にかかる速度指令推定テーブルの例を示した。ここで、図８Ａを参考し、速度指令推定テーブル８００は複数のエントリーを含む。各エントリーは、ＡＤＶの現在速度８０１と、目標速度又は目標位置まで必要な加速度８０２とを速度制御指令８０３（当該例において、アクセルのパーセンテージで示される）にマッピングする。例えば、ある時間帯（Δｔ）内に到達しようとする目標位置に応答し、現在位置から目標位置までの距離（Ｓ）は、Ｓ＝目標位置−現在位置のように算出されることができる。そして、目標速度（Ｖｔ）はＶｔ＝Ｓ／Δｔのように算出されることができる。加速度（Ａ）は、現在速度（Ｖｃ）、例えばＡ＝（Ｖｔ２−Ｖｃ２）／２Ｓに基づいて算出されることができる。そして、現在速度Ｖｃと加速度Ａに基づいて、推定される制御指令が、指令推定テーブル８００に検索することにより決定されることができる。同様に、減速（例えば、加速度８０２がマイナスである）について、速度制御指令８０３は、ブレーキのパーセンテージで表されるブレーキ指令である。
【００４９】
速度制御指令８０３は信頼数値８０４の範囲に関連し、当該信頼数値８０４の範囲は信頼範囲とも呼ばれ、対応する制御指令の誤差マージンを示す。当該例において、信頼数値８０４の範囲は加速度８０２の信頼加速度の範囲を示す。当該例において、加速度８０２を１ｍ／ｓ２とすれば、推定された速度制御指令８０３に対し、信頼数値８０４の範囲が＋／−０．２ｍ／ｓ２である。したがって、２５％のアクセルの速度制御指令の可能な加速度は０．８〜１．２ｍ／ｓ２の範囲内である。速度制御指令８０３がＡＤＶに与えられると、現在速度８０１、所要の加速度８０２及び信頼数値８０４の範囲に基づいてＡＤＶの到達可能な信頼位置の範囲を推定することができる。
【００５０】
一実施形態では、指令推定テーブル８００は、１）指令推定テーブル、及び２）信頼推定テーブルという二つのテーブルの形式で実現されることができる。当該構成において、指令推定テーブルは列８０１〜８０３を含み、信頼推定テーブルは列８０２〜８０４を含む。したがって、指令推定テーブルは、具体的な車両速度８０１と加速度８０２とを速度制御指令８０３にマッピングする。速度制御指令が一旦推定されたと、信頼推定テーブルは、加速度８０２と推定された速度制御指令８０３とに基づいて信頼範囲８０４の推定に用いられることができる。
【００５１】
同様に、ステアリング指令を推定する際に、図８Ｂに示されたステアリング指令推定テーブル又はデータ構造を利用することができる。図８Ｂを参照し、ステアリング指令推定テーブル８５０は複数のエントリーを含む。各エントリーは、車両８５１の現在速度と目標ステアリング角まで必要な移動ステアリング角８５２とをステアリング指令８５３（例えば、ステアリング角のパーセンテージで表される）にマッピングする。ステアリング制御指令８５３は誤差マージンを表す信頼範囲８５４と関連する。当該例において、信頼範囲８５４は、移動角８５２の信頼ステアリング角の範囲を表す。ステアリング制御指令８５３がＡＤＶに与えられると、現在速度８５１、所要の移動角８５２及び信頼範囲８０４に基づいてＡＤＶの到達可能な信頼位置の範囲を推定することができる。このような信頼数値８０４と８５４の範囲は、大量の運転統計（例えば、複数の人間の運転者により複数種の車両を利用する）に基づいてデータ解析システムによりオフラインで決定されたり訓練されたりすることができる。
【００５２】
一実施形態では、指令推定テーブル８５０は、１）指令推定テーブル、及び２）信頼推定テーブルという二つのテーブルの形式で実現されることができる。当該構成において、指令推定テーブルは列８５１〜８５３を含み、信頼推定テーブルは列８５２〜８５４を含む。したがって、指令推定テーブルは、具体的な車両速度８５１と移動角８５２とをステアリング制御指令８５３にマッピングする。ステアリング制御指令が一旦推定されたと、信頼推定テーブルは、移動角８５２と推定されたステアリング制御指令８５３とに基づいて信頼範囲８５４の推定に用いられることができる。
【００５３】
図７を再び参考し、７０４において、制御モジュール３０５は信頼位置を計画モジュール３０４に伝送する。７０５において、信頼位置に応答し、計画モジュール３０４は信頼位置の範囲がＡＤＶに関連する安全領域内に入るか否かを判断する。代わりに、制御モジュール３０５は信頼範囲を計画モジュール３０４に簡単に伝送することができ、且つ計画モジュール３０４は信頼位置の範囲を決定することができる。一実施形態では、安全領域は、ある時点でＡＤＶの周囲の運転環境を感知した感知データに基づいて動的に決定されるものである。言い換えれば、計画モジュール３０４は、ＡＤＶが到達可能な位置の範囲を考慮し、ＡＤＶが安全領域外の目標（例えば、他の車両、歩行者、障害物）と潜在的に衝突するか否かを判断する。７０６において、計画モジュール３０４は応答又は信号を制御モジュール３０５に伝送する。当該応答又は信号は、推定された制御指令が安全であるかを示す。信号が推定された指令が安全であると示すと、７０７において、制御モジュール３０５は推定された制御指令を車両プラットフォーム７１０に与える。
【００５４】
安全信号に基づいて推定された制御指令が不安全であると判断された場合、制御モジュール３０５は推定された制御指令を調整し（例えば、差分値を増加したり減少したりする）、及び推定された指令が安全になるか、或いは繰り返しの回数が予め設置された閾値に達するまで、７０２〜７０６が調整された推定指令に対して繰り返して実行されることができる。繰り返しの回数が予め設置された閾値に到達し、且つ適切又は安全な推定された制御指令が存在していないと、制御モジュール３０５は通常の方式、即ち計画型の方式に戻ることができる。計画型の方式において、制御モジュールはルール（例えば地図及び路線情報３１１及び／又は運転／交通ルール３１２）のセットに応じて７０１を介して計画モジュール３０４から受信される目標情報に基づいて制御指令を生成する。このような方式において、制御モジュール３０５は、できるだけ計画モジュール３０４により計画される路線又は経路を合わせるようにＡＤＶを制御しようと試みる。
【００５５】
図９は、本発明の一実施形態にかかる自動運転車両をするための手順を示すフローチャートである。手順９００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。例えば、手順９００は、計画モジュール３０４及び／又は制御モジュール３０５により実行されてもよい。図９を参考し、９０１において、処理ロジックはＡＤＶの目標位置と目標位置まで必要な時間に応答し、ＡＤＶの現在速度と現在位置に応じて目標位置に基いて制御指令を推定する。一実施形態では、処理ロジックは現在速度及び速度又はステアリング角の加速度に基いて指令推定テーブルにおいて検索を行うことにより、推定された制御指令（例えば、速度制御指令又はステアリング制御指令）を取得する。
【００５６】
９０２において、処理ロジックは、ＡＤＶの到達可能な目標位置に関連する信頼位置の範囲を決定する。信頼位置の範囲は、係わる推定された制御指令に対応するように配置される。９０３において、処理ロジックは、信頼位置の範囲が目標位置に関する安全領域内にあるか否かを判断する。安全領域は、ある時点でＡＤＶの周囲の運転環境を感知した感知データに基いて決定されてもよい。信頼位置の範囲が安全領域内に入ると判断された場合、９０４において、推定された制御指令がＡＤＶに与えられる。さもなければ、９０５において、推定された制御指令を調整して新たに推定される指令を生成し、且つ信頼位置の範囲が安全領域内に入るか、又は繰り返しの回数が予め設置された閾値に達するまで、前記の手順が繰り返して実行される。
【００５７】
注意すべきなのは、前記の示されたとともに記述された一部または全部の構成要素は、ソフトウェア、ハードウェアまたはその組み合わせで実現されることができる。例えば、このような構成要素は、永続記憶装置にインストールされるとともに記憶されたソフトウェアとして実現されてもよく、前記ソフトウェアは、本出願にわたって記載の手順または動作を実施するように、プロセッサ（図示せず）でメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路（例えば特定用途向けＩＣまたはＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、またはフィールドプログラマブルゲートアレイ（ＦＰＧＡ）にプログラミングされまたは嵌め込みされた専用ハードウェアにおける実行可能なコードとして実現されてもよく、前記実行可能なコードは、対応するドライバープログラム及び／またはオペレーティングシステムによってアプリケーションからアクセスされてもよい。なお、このような構成要素は、プロセッサまたはプロセッサコアにおける特定のハードウェアロジックとして実現されてもよく、ソフトウェア構成要素が一つ以上の特定コマンドによってアクセス可能なコマンドセットの一部とする。
【００５８】
図１０は、本発明の一実施形態と組み合わせて使用されるデータ処理システムを例示的に示すブロック図である。例えば、システム１５００は、上記プロセスまたは方法のいずれかを実行する上記任意のデータ処理システム（例えば、図２の感知及び計画システム１１０、及びサーバ１０３〜１０４のいずれか）を示してもよい。システム１５００は、多数の異なる構成要素を含んでもよい。これらの構成要素は、集積回路（ＩＣ）、集積回路の一部、分散型電子装置または回路基板に適用された他のモジュール（例えばコンピュータシステムのマザーボードまたはアドインカード）、または他の方式でコンピュータシステムのシャシーに組み込まれた構成要素として実現されることできる。
【００５９】
さらに、システム１５００は、コンピュータシステムの多数の構成要素の高レベルビューを示すことを目的とする。しかしながら、いくつかの実現形態では、付加的構成要素が存在する場合もあることを理解すべきである。また、他の実現形態において示される構成要素が異なる配置を有してもよい。システム１５００は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレーヤー、パーソナルディジタルアシスタント（ＰＤＡ）、スマート腕時計、パーソナルコミュニケーター、ゲーム装置、ネットワークルータまたはハブ、無線アクセスポイント（ＡＰ）またはリピーター、セットトップボックス、またはそれらの組合せを示してもよい。また、単一の機器またはシステムのみを示したが、用語「機器」または「システム」は、さらに、独立または共同で一つ（または複数）のコマンドセットを実行することにより本明細書に説明される任意の１種または複数種の方法を実行する機器またはシステムの任意のセットを含むことを理解すべきである。
【００６０】
一実施形態では、システム１５００は、バスまたは相互接続部材１５１０によって接続されたプロセッサ１５０１、メモリ１５０３及び装置１５０５〜１５０８を備える。プロセッサ１５０１は、単一のプロセッサコアまたは複数のプロセッサコアを含む単一のプロセッサまたは複数のプロセッサを示してもよい。プロセッサ１５０１は、マイクロプロセッサ、中央処理装置（ＣＰＵ）等のような一つまたは複数の汎用プロセッサであってもよい。より具体的には、プロセッサ１５０１は、複雑コマンドセット計算（ＣＩＳＣ）マイクロプロセッサ、縮小コマンドセットコンピュータ（ＲＩＳＣ）マイクロプロセッサ、超長コマンド語（ＶＬＩＷ）マイクロプロセッサ、または他のコマンドセットを実現するプロセッサ、またはコマンドセットの組合せを実現するプロセッサであってもよい。プロセッサ１５０１は、さらに、専用集積回路（ＡＳＩＣ）、セルラまたはベースバンドプロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタル信号プロセッサ（ＤＳＰ）、グラフィックプロセッサ、ネットワークプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような一つまたは複数の専用プロセッサ、あるいはコマンド処理可能な任意の他のタイプのロジックであってもよい。
【００６１】
プロセッサ１５０１（超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよい）は、前記システムの各種構成要素と通信するための主処理ユニット及び中央ハブとして用いられてもよい。このようなプロセッサは、システムオンチップ（ＳｏＣ）として実現されることができる。プロセッサ１５０１は、コマンドを実行することにより本明細書に説明される動作及びステップを実行するためのコマンドを実行するように構成される。また、システム１５００は、選択可能なグラフィックサブシステム１５０４と通信するグラフィックインターフェースをさらに含んでもよく、グラフィックサブシステム１５０４は、表示コントローラ、グラフィックプロセッサ及び／または表示装置をさらに備えてもよい。
【００６２】
プロセッサ１５０１は、メモリ１５０３と通信してもよく、メモリ１５０３は、一実施形態では複数のメモリによって所定量のシステムメモリを提供する。メモリ１５０３は、ランダムアクセスメモリ（ＲＡＭ）、動的ＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、静的ＲＡＭ（ＳＲＡＭ）または他のタイプの記憶装置のような一つまたは複数の揮発性記憶（またはメモリ）装置を備えてもよい。メモリ１５０３は、プロセッサ１５０１または任意の他の装置により実行されるコマンド列を含む情報を記憶することができる。例えば、複数種のオペレーティングシステム、装置ドライバー、ファームウェア（例えば、基本入出力システムまたはＢＩＯＳ）及び／またはアプリケーションの実行可能なコード及び／またはデータはメモリ１５０３にロードされてもよく、プロセッサ１５０１により実行されてもよい。オペレーティングシステムは、ロボットオペレーティングシステム（ＲＯＳ）、Ｍｉｃｒｏｓｏｆｔ（登録商標）会社からのＷｉｎｄｏｗｓ（登録商標）オペレーティングシステム、アップル会社からのＭａｃ  ＯＳ（登録商標）／ｉＯＳ（登録商標）、Ｇｏｏｇｌｅ（登録商標）会社からのＡｎｄｒｏｉｄ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ｕｎｉｘ（登録商標）または他のリアルタイムまたは組み込みオペレーティングシステムのような任意のタイプのオペレーティングシステムであってもよい。
【００６３】
システム１５００は、Ｉ／Ｏ装置、例えば装置１５０５〜１５０８をさらに備えてもよく、ネットワークインターフェース装置１５０５、選択可能な入力装置１５０６及び他の選択可能なＩ／Ｏ装置１５０７を備える。ネットワークインターフェース装置１５０５は、無線送受信機及び／またはネットワークインターフェースカード（ＮＩＣ）を備えてもよい。前記無線送受信機は、ＷｉＦｉ送受信機、赤外送受信機、ブルートゥース送受信機、ＷｉＭａｘ送受信機、無線セルラーホン送受信機、衛星送受信機（例えば、全地球測位システム（ＧＰＳ）送受信機）または他の無線周波数（ＲＦ）送受信機またはそれらの組合せであってもよい。ＮＩＣはイーサネット（登録商標）カードであってもよい。
【００６４】
入力装置１５０６は、マウス、タッチパッド、タッチスクリーン（それは表示装置１５０４と集積されてもよい）、ポインタデバイス（例えばスタイラス）及び／またはキーボード（例えば、物理キーボードまたはタッチスクリーンの一部として表示された仮想キーボード）を備えてもよい。例えば、入力装置１５０６は、タッチスクリーンに接続されるタッチスクリーンコントローラを含んでもよい。タッチスクリーン及びタッチスクリーンコントローラは、例えば複数種のタッチ感度技術（容量、抵抗、赤外及び表面音波の技術を含むが、それらに限定されない）のいずれか、及びタッチスクリーンの一つまたは複数の接触点を決定するための他の近接センサアレイまたは他の素子を用いてそのタッチ点及び移動または断続を検出することができる。
【００６５】
Ｉ／Ｏ装置１５０７は音声装置を備えてもよい。音声装置は、スピーカ及び／またはマイクロホンを含んでもよく、それにより音声認識、音声コピー、デジタル記録及び／または電話機能のような音声サポートの機能を促進する。他のＩ／Ｏ装置１５０７は、汎用シリアルバス（ＵＳＢ）ポート、パラレルポート、シリアルポート、印刷機、ネットワークインターフェース、バスブリッジ（例えば、ＰＣＩ−ＰＣＩブリッジ）、センサ（例えば、加速度計、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサ等のような動きセンサ）またはそれらの組合せをさらに備えてもよい。装置１５０７は、結像処理サブシステム（例えば、カメラ）をさらに備えてもよく、前記結像処理サブシステムは、カメラ機能（例えば、写真及びビデオ断片の記録）を促進するための電荷カップリング装置（ＣＣＤ）または相補型金属酸化物半導体（ＣＭＯＳ）光学センサのような光学センサを備えてもよい。あるセンサは、センサハブ（図示せず）によって相互接続部材１５１０に接続されてもよく、キーボードまたは熱センサのような他の装置は、組み込みコントローラ（図示せず）により制御されてもよく、これはシステム１５００の特定配置または設計により決められる。
【００６６】
データ、アプリケーション、一つまたは複数のオペレーティングシステム等のような情報の永久記憶を提供するために、大容量記憶装置（図示せず）は、プロセッサ１５０１に接続されてもよい。様々な実施形態において、薄型化と軽量化のシステム設計を実現し且つシステムの応答能力を向上させるために、このような大容量記憶装置は、ソリッドステート装置（ＳＳＤ）によって実現されることができる。なお、他の実施形態において、大容量記憶装置は、主にハードディスクドライブ（ＨＤＤ）で実現されてもよく、容量が小さいＳＳＤ記憶装置は、ＳＳＤキャッシュとして停電イベント期間にコンテキスト状態及び他のこのような情報の永久記憶を実現し、それによりシステム動作が再開するときに通電を速く実現することができる。さらに、フラッシュデバイスは、例えばシリアルペリフェラルインターフェース（ＳＰＩ）によってプロセッサ１５０１に接続されてもよい。このようなフラッシュデバイスは、システムソフトウェアの不揮発性記憶に用いられてもよく、前記システムソフトウェアは、前記システムのＢＩＯＳ及び他のファームウェアを備える。
【００６７】
記憶装置１５０８は、任意の１種または複数種の本明細書に記載の方法または機能を体現する一つまたは複数のコマンドセットまたはソフトウェア（例えば、モジュール、ユニット及び／またはロジック１５２８）が記憶されるコンピュータアクセス可能な記憶媒体１５０９（機械可読記憶媒体またはコンピュータ可読媒体とも呼ばれる）を備えてもよい。モジュール／ユニット／ロジック１５２８は、計画モジュール３０４及び／または制御モジュール３０５のような上記構成要素のいずれかを示してもよい。モジュール／ユニット／ロジック１５２８は、さらにデータ処理システム１５００により実行される期間にメモリ１５０３内及び／またはプロセッサ１５０１内に完全または少なくとも部分的に存在してもよく、ここで、メモリ１５０３及びプロセッサ１５０１も、機器アクセス可能な記憶媒体を構成する。処理モジュール／ユニット／ロジック１５２８は、さらにネットワークによってネットワークインターフェース装置１５０５を経由して送受信されてもよい。
【００６８】
コンピュータ可読記憶媒体１５０９は、以上に説明されたいくつかのソフトウェア機能を永続的に記憶してもよい。コンピュータ可読記憶媒体１５０９は、例示的な実施形態において単一の媒体として示されたが、用語「コンピュータ可読記憶媒体」は、前記一つまたは複数のコマンドセットが記憶される単一の媒体または複数の媒体（例えば、集中型または分散型データベース、及び／または関連するキャッシュ及びサーバ）を備えることを理解すべきである。用語「コンピュータ可読記憶媒体」は、さらにコマンドセットを記憶またはコーディング可能な任意の媒体を備えることを理解すべきであり、前記コマンドセットは、機器により実行され且つ前記機器に本出願の任意の１種または複数種の方法を実行させる。したがって、用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリ及び光学媒体と磁気媒体または任意の他の非一時的機械可読媒体を備えるが、それらに限定されないことを理解すべきである。
【００６９】
本明細書に記載のモジュール／ユニット／ロジック１５２８、構成要素及び他の特徴は、ディスクリートハードウェア構成要素として実現されてもよく、またはハードウェア構成要素（例えばＡＳＩＣＳ、ＦＰＧＡ、ＤＳＰまたは類似装置）の機能に統合されてもよい。さらに、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置内のファームウェアまたは機能回路として実現されてもよい。また、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置及びソフトウェア構成要素の任意の組合せで実現されてもよい。
【００７０】
なお、システム１５００は、データ処理システムの各種の構成要素を有するように示されているが、構成要素の相互接続のいかなる特定のアーキテクチャーまたは方式を示すものではないことに注意すべきであり、それは、このような詳細が本出願の実施形態に密接な関係がないためである。また、より少ない構成要素またはより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ及び／または他のデータ処理システムは、本出願の実施形態と共に使用されてもよい。
【００７１】
上記詳細な説明の一部は、コンピュータメモリにおけるデータビットに対する演算のアルゴリズム及び記号表現で示される。これらのアルゴリズムの説明及び表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。ここで、アルゴリズムは、通常、所望の結果につながる首尾一貫した動作列（sequence of operations）と考えられる。これらの動作とは、物理量に対して物理的動作を行う必要となるステップを指す。
【００７２】
ただし、これらの全て及び類似の用語は、いずれも適切な物理量に関連付けられ、且つただこれらの量に適用される適切なラベルであることに注意すべきである。特に断らない限り、本出願の全体にわたって用語（例えば、添付している特許請求の範囲に説明された用語）による説明とは、コンピュータシステムまたは類似の電子計算装置の動作及び処理であり、前記コンピュータシステムまたは電子計算装置は、コンピュータシステムのレジスタ及びメモリに物理（例えば、電子）量としてデータを示し、且つ前記データをコンピュータシステムメモリまたはレジスタまたは他のこのような情報記憶装置、伝送または表示装置内において類似に物理量として示される他のデータに変換する。
【００７３】
本出願の実施形態は、さらに本明細書における動作を実行するための装置に関する。このようなコンピュータプログラムは、不揮発性のコンピュータ可読媒体に記憶される。機器可読媒体は、機器（例えば、コンピュータ）可読な形態で情報を記憶する任意の機構を備える。例えば、機器可読（例えば、コンピュータ可読）媒体は、機器（例えば、コンピュータ）可読記憶媒体（例えば、読み出し専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリメモリ）を備える。
【００７４】
上記図面に示される手順または方法は、ハードウェア（例えば、回路、専用ロジック等）、ソフトウェア（例えば、不揮発性のコンピュータ可読媒体に具現化される）、または両方の組合せを含む処理ロジックにより実行されてもよい。前記手順または方法は、本明細書において特定の順序に応じて説明されるが、説明された動作の一部は、異なる順序に応じて実行されてもよい。また、いくつかの動作は、順番ではなく並行に実行されてもよい。
【００７５】
本出願の実施形態は、いずれかの特定のプログラミング言語を参照して説明されていないが、複数種のプログラミング言語で本明細書に記載の本出願の実施形態の教示を実現できることを理解すべきである。
【００７６】
以上の明細書では、本出願の具体的な例示的な実施形態を参照してその実施形態を説明した。明らかなように、添付している特許請求の範囲に記載の本出願のより広い趣旨及び範囲を逸脱しない限り、様々な変形が可能である。したがって、限定的なものではなく例示的なものとして本明細書及び図面を理解すべきである。
【図１Ａ】
2018158719.tif 000003
【図１Ｂ】
2018158719.tif 000004
【図２】
2018158719.tif 000005
【図３】
2018158719.tif 000006
【図４】
2018158719.tif 000007
【図５Ａ】
2018158719.tif 000008
【図５Ｂ】
2018158719.tif 000009
【図６Ａ】
2018158719.tif 000010
【図６Ｂ】
2018158719.tif 000011
【図７】
2018158719.tif 000012
【図８Ａ】
2018158719.tif 000013
【図８Ｂ】
2018158719.tif 000014
【図９】
2018158719.tif 000015
【図１０】
2018158719.tif 000016
【外国語明細書】
2018158719000001.pdf