(57)【要約】一実施形態では、自律走行車（ＡＤＶ）速度追従システムは、ＡＤＶのスロットル又はブレーキ制御をどのぐらい及びいつ用いるかを決定し、ＡＤＶに計画経路の障害物を迂回し又は回避するように操縦する。速度追従システムは、ＡＤＶを加速させる第１トルク力と、摩擦力と風の抵抗を克服して参照速度を維持する第２トルク力と、ＡＤＶの計画経路における定義した目標速度と実際速度との間の初期差及び以降の外部干渉を最小化させる第３トルク力とを計算する。速度追従システムは第１、第２及び第３トルク力に基づいてスロットル−ブレーキトルク力を決定し、スロットル−ブレーキトルク力でＡＤＶの次の速度を制御する。【選択図】図８
2019501809.tif 000002
【特許請求の範囲】
【請求項１】
前記自律走行車を加速させるための第１トルク力を計算して、前記自律走行車を操縦するステップと、
前記自律走行車の一定速度を維持するための第２トルク力を計算するステップと、
前記第１トルク力と第２トルク力に基づいてスロットル−ブレーキトルク力を決定するステップと、
前記スロットル−ブレーキトルク力に基づいて前記自律走行車の次の速度を制御するステップと、を含む
ことを特徴とする自律走行車の速度を制御するためのコンピュータ実装方法。
【請求項２】
前記第１トルク力を計算するステップには、
前記自律走行車の目標速度を示す第１速度を決定して、第１参照時間に前記自律走行車を操縦するステップと、
前記自律走行車の目標速度を示す第２速度を決定して、第２参照時間に前記自律走行車を操縦するステップと、
コマンド遅延を配慮し、前記第１速度と前記第２速度に基づいて前記第１トルク力を計算するステップと、を含む
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記第１速度と前記第２速度に基づいて前記第１トルク力を計算するステップには、
前記第１速度と前記第２速度との間の速度差を計算するステップと、
前記速度差を、前記第１参照時間と前記第２参照時間との間の時間差で割るステップと、を含む
ことを特徴とする請求項２に記載の方法。
【請求項４】
前記第２トルク力を計算するステップには、
前記自律走行車の現在の速度を決定するステップと、
前記自律走行車に作用する摩擦力を決定するステップと、
前記自律走行車に作用する風の抵抗を決定するステップと、
前記現在の速度、前記摩擦力及び前記風の抵抗に基づいて、前記自律走行車の前記現在の速度の維持に必要な前記第２トルク力を計算するステップと、を含む
ことを特徴とする請求項１に記載の方法。
【請求項５】
前記現在の速度の二次微分に基づいて前記風の抵抗を決定し、前記現在の速度の一次微分に基づいて前記摩擦力を決定する
ことを特徴とする請求項４に記載の方法。
【請求項６】
さらに、前記自律走行車の実際速度と目標速度との間の速度差を最小化させる第３トルク力を計算し、前記第３トルク力に基づいて前記スロットル−ブレーキトルク力を決定するステップを含む
ことを特徴とする請求項１に記載の方法。
【請求項７】
前記第３トルク力を計算するステップには、
自律走行車の目標速度を決定するステップと、
前記自律走行車の実際速度を決定するステップと、
前記目標速度と前記実際速度との間の差の最小化に必要な前記第３トルク力を比例−積分−微分（ＰＩＤ）コントローラで計算するステップと、を含む
ことを特徴とする請求項６に記載の方法。
【請求項８】
前記スロットル−ブレーキトルク力を計算するステップには、前記第１トルク力と、前記第２トルク力と、前記第３トルク力とを加算するステップを含む
ことを特徴とする請求項６に記載の方法。
【請求項９】
命令が記憶された非一時的な機械可読媒体であって、
前記命令が、プロセッサにより実行される場合、前記プロセッサに自律走行車を操縦する操作を実行させ、前記操作は、
前記自律走行車を加速させるための第１トルク力を計算して、前記自律走行車を操縦するステップと、
前記自律走行車の一定速度を維持するための第２トルク力を計算するステップと、
前記第１トルク力と第２トルク力に基づいてスロットル−ブレーキトルク力を決定するステップと、
前記スロットル−ブレーキトルク力に基づいて前記自律走行車の次の速度を制御するステップと、を含む
ことを特徴とする非一時的機械可読媒体。
【請求項１０】
前記第１トルク力を計算するステップには、
前記自律走行車の目標速度を示す第１速度を決定して、第１参照時間に前記自律走行車を操縦するステップと、
前記自律走行車の目標速度を示す第２速度を決定して、第２参照時間に前記自律走行車を操縦するステップと、
コマンド遅延を配慮し、前記第１速度と前記第２速度に基づいて前記第１トルク力を計算するステップと、を含む
ことを特徴とする請求項９に記載の機械可読媒体。
【請求項１１】
前記第１速度と前記第２速度に基づいて前記第１トルク力を計算するステップには、
前記第１速度と前記第２速度との間の速度差を計算するステップと、
前記速度差を、前記第１参照時間と前記第２参照時間との間の時間差で割るステップと、を含む
ことを特徴とする請求項１０に記載の機械可読媒体。
【請求項１２】
前記第２トルク力を計算するステップには、
前記自律走行車の現在の速度を決定するステップと、
前記自律走行車に作用する摩擦力を決定するステップと、
前記自律走行車に作用する風の抵抗を決定するステップと、
前記現在の速度、前記摩擦力及び前記風の抵抗に基づいて、前記自律走行車の前記現在の速度の維持に必要な前記第２トルク力を計算するステップと、を含む
ことを特徴とする請求項９に記載の機械可読媒体。
【請求項１３】
前記現在の速度の二次微分に基づいて前記風の抵抗を決定し、前記現在の速度の一次微分に基づいて前記摩擦力を決定する
ことを特徴とする請求項１２に記載の機械可読媒体。
【請求項１４】
前記操作はさらに、前記自律走行車の実際速度と目標速度との間の速度差を最小化させる第３トルク力を計算し、前記第３トルク力に基づいて前記スロットル−ブレーキトルク力を決定するステップを含む
ことを特徴とする請求項９に記載の機械可読媒体。
【請求項１５】
前記第３トルク力を計算するステップには、
自律走行車の目標速度を決定するステップと、
前記自律走行車の実際速度を決定するステップと、
前記目標速度と前記実際速度との間の差の最小化に必要な前記第３トルク力を比例−積分−微分（ＰＩＤ）コントローラで計算するステップと、を含む
ことを特徴とする請求項１４に記載の機械可読媒体。
【請求項１６】
前記スロットル−ブレーキトルク力を計算するステップには、前記第１トルク力と、前記第２トルク力と、前記第３トルク力とを加算するステップを含む
ことを特徴とする請求項１４に記載の機械可読媒体。
【請求項１７】
プロセッサと、
前記プロセッサに連結されて命令を記憶するメモリと、を備え、
前記命令が、前記プロセッサにより実行される場合、前記プロセッサに自律走行車を操縦する操作を実行させ、前記操作は、
前記自律走行車を加速させるための第１トルク力を計算して、前記自律走行車を操縦するステップと、
前記自律走行車の一定速度を維持するための第２トルク力を計算するステップと、
前記第１トルク力と第２トルク力に基づいてスロットル−ブレーキトルク力を決定するステップと、
前記スロットル−ブレーキトルク力に基づいて前記自律走行車の次の速度を制御するステップと、を含む
ことを特徴とするデータ処理システム。
【請求項１８】
前記第１トルク力を計算するステップには、
前記自律走行車の目標速度を示す第１速度を決定して、第１参照時間に前記自律走行車を操縦するステップと、
前記自律走行車の目標速度を示す第２速度を決定して、第２参照時間に前記自律走行車を操縦するステップと、
コマンド遅延を配慮し、前記第１速度と前記第２速度に基づいて前記第１トルク力を計算するステップと、を含む
ことを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記第１速度と前記第２速度に基づいて前記第１トルク力を計算するステップには、
前記第１速度と前記第２速度との間の速度差を計算するステップと、
前記速度差を、前記第１参照時間と前記第２参照時間との間の時間差で割るステップと、を含む
ことを特徴とする請求項１８に記載のシステム。
【請求項２０】
前記第２トルク力を計算するステップには、
前記自律走行車の現在の速度を決定するステップと、
前記自律走行車に作用する摩擦力を決定するステップと、
前記自律走行車に作用する風の抵抗を決定するステップと、
前記現在の速度、前記摩擦力及び前記風の抵抗に基づいて、前記自律走行車の前記現在の速度の維持に必要な前記第２トルク力を計算するステップと、を含む
ことを特徴とする請求項１７に記載のシステム。
【請求項２１】
前記現在の速度の二次微分に基づいて前記風の抵抗を決定し、前記現在の速度の一次微分に基づいて前記摩擦力を決定する
ことを特徴とする請求項２０に記載のシステム。
【請求項２２】
前記操作はさらに、前記自律走行車の実際速度と目標速度との間の速度差を最小化させる第３トルク力を計算し、前記第３トルク力に基づいて前記スロットル−ブレーキトルク力を決定する操作を含む
ことを特徴とする請求項１７に記載のシステム。
【請求項２３】
前記第３トルク力を計算するステップには、
自律走行車の目標速度を決定するステップと、
前記自律走行車の実際速度を決定するステップと、
前記目標速度と前記実際速度との間の差の最小化に必要な前記第３トルク力を比例−積分−微分（ＰＩＤ）コントローラで計算するステップと、を含む
ことを特徴とする請求項２２に記載のシステム。
【請求項２４】
前記スロットル−ブレーキトルク力を計算するステップには、前記第１トルク力と、前記第２トルク力と、前記第３トルク力とを加算するステップを含む
ことを特徴とする請求項２２に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、大体自律走行車を操作することに関する。より具体的に、本発明の実施形態は自律走行車の速度の制御に必要なトルク又は回転力の決定に関する。
【背景技術】
【０００２】
自律モード（例えば、自律運転）で走行している車両は、乗員（特に運転者）を、特定の運転に関連する責任から解放することができる。自律モードで走行している場合、車両は車載センサで様々な場所にナビゲートすることができ、それにより車両がヒューマンコンピュータインタラクションの最も少ない場合又はいくつかの乗客がない場合で運行することを可能にさせる。
【０００３】
速度制御（スロットルとブレーキ制御）は自動運転に対して重要な操作である。自律走行車はスロットル制御又はブレーキ制御を用いて、自律走行車に自動的に計画経路に従って障害物を迂回又は回避させるように操縦する必要がある。計画経路は出発位置から目標位置までの加速、減速、又は参照速度の維持を含んでもよい。しかし、車両速度制御が遅延システムであり、すなわち、自律走行車の機械的特徴が所定の時間遅延で応答し且つ外部要素（例えば摩擦力、風の抵抗、路面の急峻性及び初期誤差）が存在するため、自律走行車に目標参照速度を追従させると同時に、自律走行車（自動運転車又はＡＤＶとも呼称される）の目標速度と実際速度との間の差を最小化させることが挑戦的である。
【０００４】
本発明の実施形態は、図面の各図に限定されるのではなく例示的に示され、図面において、同じ参照符号が類似する要素を示す。
【図面の簡単な説明】
【０００５】
【図１】本発明の一実施形態に係るネットワーク化システムを示すブロック図である。
【図２】本発明の一実施形態に係る自律走行車の実例を示すブロック図である。
【図３】本発明の一実施形態に係る自律走行車とともに使用する感知・計画システムの実例を示すブロック図である。
【図４】本発明の一実施形態に係る感知・計画システムの制御モジュールの実例を示すブロック図である。
【図５】本発明の一実施形態に係るＴＦＡＣＣを用いる自律車両の移動距離に対する目標速度、実際速度、及び目標速度と実際速度（メートル／秒）との差のグラフである。
【図６】本発明の一実施形態に係るＴＦＡＣＣ＋ＴＦＭを用いる自律車両の移動距離に対する目標速度、実際速度、及び目標速度と実際速度（メートル／秒）の差のグラフである。
【図７Ａ】本発明の一実施形態に係る初期速度偏差を伴う状況で、ＴＦＡＣＣ＋ＴＦＭを用いる自律走行車の走行距離に対する目標速度、実際速度及び目標速度と実際速度（メートル／秒）との間の差のグラフである。
【図７Ｂ】本発明の一実施形態に係る初期速度偏差を伴う状況で、ＴＦＡＣＣ＋ＴＦＭ＋ＴＦＤＩＦＦを用いる自律走行車の走行距離に対する目標速度、実際速度及び目標速度と実際速度（メートル／秒）との間の差のグラフである。
【図８】本発明の一実施形態に係る自律走行車（ＡＤＶ）の速度を制御するためのスロットル−ブレーキトルク又は回転力（ＴＦ）を計算する手順を示すフローチャートである。
【図９】本発明の一実施形態に係るＡＤＶの加速度トルク又は回転力（ＴＦＡＣＣ）を計算する手順を示すフローチャートである。
【図１０】本発明の一実施形態に係るＡＤＶの摩擦力と風の抵抗を克服するための維持トルク又は回転力（ＴＦＭ）を計算する手順を示すフローチャートである。
【図１１】本発明の一実施形態に係るＡＤＶの外部干渉と初期誤差（例えば、実際速度と目標速度との間の速度差）を最小化させるためのトルク又は回転力（ＴＦＤＩＦＦ）を計算する手順を示すフローチャートである。
【図１２】一実施形態に係るデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【０００６】
以下、検討した詳細を参照して本発明の様々な実施形態及び態様を説明し、添付の図面は、前記様々な実施形態を示す。以下の説明及び図面は、本発明の例示であり、本発明を限定するものとして解釈されるべきではない。本発明の様々な実施形態の完全な理解を提供するために、多くの詳細が記載されている。しかしながら、場合によって、本発明の実施形態の説明の簡潔さから、周知又は従来の詳細は記載されていない。
【０００７】
本明細書において、「一実施形態」又は「実施形態」とは、当該実施形態に説明した特定の特徴、構造、又は特性を本発明の少なくとも１つの実施形態に含めることができることを意味する。本明細書を通じて使用される「一実施形態では」という語句は、必ずしもすべて同じ実施形態を指すとは限らない。明細書における「トルク力」（ＴＦ）とは、トルク又は回転力を意味する。
【０００８】
いくつかの実施形態によれば、感知及び計画システムの制御モジュールは、自律走行車（ＡＤＶ）のスロットル又はブレーキ制御をどのぐらい及びいつ用いるかを決定し、ＡＤＶに計画経路の障害物を迂回し又は回避するように操縦する。計画経路は、加速、減速、又は参照速度の維持を含んでもよい。
【０００９】
一実施形態において、制御モジュールは、自律走行車を加速させるための第１トルク力を計算して、自律走行車を操縦し、参照速度を維持するための第２トルク力（例えば、摩擦力と風の抵抗を克服する）を計算し、車両速度の初期差及び車両速度に影響するＡＤＶの外部干渉（例えば、急な坂において走行する）を最小化させる第３トルク力を計算する。速度制御システムは第１トルク力、第２トルク力及び第３トルク力に基づいてスロットル制御又はブレーキ制御（スロットル−ブレーキ）トルク力を決定し、決定されたスロットル−ブレーキトルク力に基づいてＡＤＶの次の速度を制御する。
【００１０】
一実施形態において、第１トルク力は、ＡＤＶの第１目標速度を決定して、第１参照時間にＡＤＶを操縦するステップと、ＡＤＶの第２目標速度を決定して、第２参照時間にＡＤＶを操縦するステップと、制御命令を出す時間から実際の速度出力が観測されたまでの機械コマンド遅延を配慮して第１目標速度と第２目標速度に基づいて加速度トルク力を計算して第１トルク力とするステップと、によって計算される。別の実施形態では、コマンド遅延は加速度制御を応用するＡＤＶと減速度制御を応用するＡＤＶとに対して異なる。別の実施形態では、第１目標速度と第２目標速度との間の差を取得して、第１参照時間と第２参照時間の間の差で割ることで第１ルク力を計算する。
【００１１】
一実施形態において、第２トルク力は、ＡＤＶの現在の速度を決定するステップと、ＡＤＶに作用する摩擦力を決定するステップと、ＡＤＶに作用する風の抵抗を決定するステップと、現在の速度、摩擦力及び風の抵抗に基づいて、参照時間内に安定速度に維持に用いられるトルク力を計算するステップと、によって計算される。別の実施形態では、ＡＤＶの現在の速度の二次微分に基づいて風の抵抗を決定し、ＡＤＶの現在の速度の一次微分に基づいて摩擦力を決定する。
【００１２】
一実施形態において、第３トルク力は、ＡＤＶの目標速度を決定するステップと、ＡＤＶの実際速度を決定するステップと、比例−積分−微分（ＰＩＤ）コントローラで目標速度と実際速度に基づいて速度の初期オフセット及びＡＤＶの任意の外部干渉（例えば、急な坂において走行する）を計算するステップと、によって計算される。別の実施形態では、第１トルク力と、第２トルク力と、第３トルク力とを加算することでスロットル−ブレーキトルク力を計算する。
【００１３】
図１は本発明に係る一実施形態に係る自律走行車のネットワーク配置を示すブロック図である。図１を参照して、ネットワーク配置１００はネットワーク１０２によって１つ以上のサーバ１０３〜１０４に通信可能に接続することができる自律走行車１０１を含む。１つの自律走行車を示すが、ネットワーク１０２によって複数の自律走行車は互いに接続され、及び／又はサーバ１０３〜１０４に接続されることができる。ネットワーク１０２は、任意のタイプのネットワーク、例えば有線又は無線のローカルエリアネットワーク（ＬＡＮ）、例えばインターネット、セルラーネットワーク、衛星ネットワークの広域ネットワーク（ＷＡＮ）又はその組み合わせであってもよい。サーバ１０３〜１０４は任意のタイプのサーバ又はサーバクラスタ、例えばＷｅｂサーバ又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ又はその組み合わせであってもよい。サーバ１０３〜１０４は、データ分析サーバ、内容サーバ、交通情報サーバ、地図（マップ）及び興味のあるポイント（ＭＰＯＩ）サーバ又は位置サーバ等であってもよい。
【００１４】
自律走行車とは、自律モードになるように配置できる車両を指し、前記自律モードで車両が運転者からの入力が非常に少ない又はない場合にもナビゲーションして環境を通過する。このような自律走行車は、センサシステムを含んでもよく、前記センサシステムは車両走行環境に関連する情報を検出するように配置される１つ以上のセンサを有する。前記車両及びその関連するコントローラは検出した情報を使用してナビゲーションし環境を通過する。自律走行車１０１は、手動モード、完全自律モード又は部分自律モードで運行することができる。
【００１５】
一実施形態において、自律走行車１０１は、感知及び計画システム１１０と、車両制御システム１１１と、無線通信システム１１２と、ユーザインターフェースシステム１１３と、センサシステム１１５とを含むが、これらに制限されない。自律走行車１０１は、通常の車両に含まれるある一般的な構成要素（部材）、例えばエンジン、車輪、ハンドル、変速器等をさらに含んでもよく、前記構成要素は、車両制御システム１１１及び／又は感知及び計画システム１１０により多種の通信信号及び／又は命令（例えば加速度信号又は命令、減速信号又は命令、ステアリング信号又は命令、ブレーキ信号又は命令等）を使用して制御することができる。
【００１６】
構成要素１１０〜１１５は、インターコネクト、バス、ネットワーク又はそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素１１０〜１１５は、コントローラローカルエリアネットワーク（ＣＡＮ）バスを介して互いに通信可能に接続することができる。ＣＡＮバスは、マイクロコントローラ及び装置がホストコンピューターのない使用において互いに通信することを許可するような車両バス標準として設計される。それはメッセージに基づくプロトコルであり、最初に自動車内における複数の電線のために設計されたが、数多くのその他の環境（状況）にも用いられる。
【００１７】
現在、図２を参照して、一実施形態において、センサシステム１１５は、１つ以上のカメラ２１１と、全地球測位システム（ＧＰＳ）ユニット２１２と、慣性計測ユニット（ＩＭＵ）２１３と、レーダーユニット２１４と、ＬＩＤＡＲ（光検出及び測距）ユニット２１５とを含むが、これらに制限されない。ＧＰＳシステム２１２は、送受信機を含んでもよく、前記送受信機は、自律走行車の位置に関する情報を提供するように動作することができる。ＩＭＵユニット２１３は、慣性加速度に基づいて自律走行車の位置及び方向変化を感知することができる。レーダーユニット２１４は、無線信号を利用して自律走行車のローカル環境内の対象を感知するシステムを示すことができる。いくつかの実施形態において、対象を感知する以外、レーダーユニット２１４は、さらに対象の速度及び／又は進行方向を感知することができる。ＬＩＤＡＲユニット２１５はレーザを使用して自律走行車の所在する環境における対象を感知することができる。その他のシステム構成要素以外、ＬＩＤＡＲユニット２１５は１つ以上のレーザ光源、レーザースキャナ及び１つ以上の検出器をさらに含んでもよい。カメラ２１１は、自律走行車の周辺環境の画像をキャプチャするための１つ以上の装置を含んでもよい。カメラ２１１は、スチルカメラ及び／又はビデオカメラであってもよい。カメラは、例えば回転及び／又は傾斜のプラットフォームに取り付けられる、機械的に移動可能なものであってもよい。
【００１８】
センサシステム１１５は、その他のセンサ、例えばソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ（例えばマイクロフォン）をさらに含んでもよい。オーディオセンサは、自律走行車周辺の環境から音をキャプチャするように配置されてもよい。ステアリングセンサは、ハンドル、車両の車輪又はその組み合わせのステアリング角を感知するように配置できる。スロットルセンサ及びブレーキセンサは、それぞれ車両のスロットル位置及びブレーキ位置を感知する。いくつかの場合、スロットルセンサ及びブレーキセンサは、集積型スロットル／ブレーキセンサに一体化されてもよい。
【００１９】
一実施形態において、車両制御システム１１１は、ステアリングユニット２０１と、スロットルユニット２０２（加速ユニットとも呼ばれる）と、ブレーキユニット２０３とを含むが、これらに制限されない。ステアリングユニット２０１は、車両の方向又は進行方向を調整することに用いられる。スロットルユニット２０２は、モーター又はエンジンの速度を制御して、続いて車両の速度及び加速度を制御することに用いられる。ブレーキユニット２０３は、摩擦を提供することによって車両の車輪又はタイヤをスローダウンして車両を減速させることに用いられる。注意すべきなのは、図２に示すような構成要素はハードウェア、ソフトウェア又はその組み合わせで実現されることができる。
【００２０】
図１を再び参照して、無線通信システム１１２は、自律走行車１０１と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを可能にする。例えば、無線通信システム１１２は、１つ以上の装置に直接に又は通信ネットワークを介して無線通信し、例えばネットワーク１０２によってサーバ１０３〜１０４に通信できる。無線通信システム１１２は、任意のセルラー通信ネットワーク又は無線ローカルエリアネットワーク（ＷＬＡＮ）（例えばＷｉＦｉ）を使用して他の構成要素やシステムに通信することができる。無線通信システム１１２は、例えば赤外線リンク、ブルートゥース（登録商標）等を使用して装置（例えば、乗客の移動装置、表示装置、車両１０１内のスピーカー）に直接に通信できる。ユーザインターフェースシステム１１３は、車両１０１内で実行される周辺装置の一部であってもよく、例えばキーワード、タッチスクリーンディスプレイ装置、マイクロフォン、及びスピーカー等を含む。
【００２１】
自律走行車１０１の一部又は全ての機能は、特に自律運転モードで操作する場合、感知及び計画システム１１０により制御したり管理したりすることができる。感知及び計画システム１１０は、必要なハードウェア（例えば、プロセッサ、メモリ、メモリ）、及びソフトウェア（例えば、オペレーティングシステム、計画及びルーティングプログラム）を含み、センサシステム１１５、制御システム１１１、無線通信システム１１２、及び／又はユーザインターフェースシステム１１３から情報を受信し、受信された情報を処理し、出発地から目的地までのルートや経路を計画し、そして計画及び制御情報に基づいて車両１０１を運転させる。あるいは、感知及び計画システム１１０と車両制御システム１１１とは一体化されてもよい。
【００２２】
例えば、乗客のユーザとして、例えばユーザインターフェースによって旅程の出発位置及び目的位置を指定することができる。感知及び計画システム１１０は旅程関連データを取得する。例えば、感知及び計画システム１１０は、ＭＰＯＩサーバから位置及びルート情報を取得することができ、前記ＭＰＯＩサーバはサーバ１０３〜１０４の一部であってもよい。位置サーバは、位置サービスを提供し、かつＭＰＯＩサーバはマップサービス及びある位置のＰＯＩを提供する。あるいは、このような位置及びＭＰＯＩ情報は、感知及び計画システム１１０の永続的記憶装置にローカルでキャッシュされることができる。
【００２３】
自律走行車１０１がルートに沿って移動する時に、感知及び計画システム１１０は、さらに交通情報システムやサーバ（ＴＩＳ）からリアルタイム交通情報を取得することができる。注意すべきなのは、サーバ１０３〜１０４は、第三者エンティティにより動作されることができる。あるいは、サーバ１０３〜１０４の機能は、感知及び計画システム１１０と一体化されてもよい。リアルタイム交通情報、ＭＰＯＩ情報、位置情報、及びセンサシステム１１５が検出又は感知したリアルタイムなローカル環境データ（例えば、障害物、対象、付近車両）に基づいて、感知及び計画システム１１０は、安全で効果的に指定した目的地に到達するように、最適なルートを計画し、かつ計画したルートにより例えば制御システム１１１を介して車両１０１を運転することができる。
【００２４】
一実施形態によれば、３つのトルク力からなるトルク力（ＴＦ）モデルから、自律走行車（ＡＤＶ）のスロットル制御又はブレーキ制御トルク力を決定することができる。システムは、自律走行車を加速させるための第１トルク力、一定速度を維持する第２トルク力、及び車両の目標速度と実際速度との間の速度差を最小化させる第３トルク力を計算する。システムは、第１、第２及び第３トルク力に基づいてスロットル−ブレーキトルク力を決定する。システムはスロットル−ブレーキトルク力に基づいて自律走行車の次の速度を制御する。
【００２５】
一実施形態では、第１参照時間にＡＤＶの第１目標速度を決定し、第２参照時間に第２目標速度を決定し、実際速度がスロットル制御コマンドを実行した時間からの機械コマンド遅延を有することを配慮して第１目標速度と第２目標速度に基づいて加速度トルク力を計算する方式で、第１トルク力を計算する。別の実施形態では、コマンド遅延は加速度（例えば、スロットル制御）と減速度（例えば、ブレーキ制御）によって異なる。別の実施形態では、第１目標速度と第２目標速度との間の差を第１参照時間と第２参照時間の間の差で割ることで加速度トルク力を計算する。
【００２６】
一実施形態では、ＡＤＶの現在の速度を決定し、ＡＤＶに作用する摩擦力を決定し、ＡＤＶに作用する風の抵抗を決定し、ＡＤＶの現在の速度、決定した摩擦力及び風の抵抗に基づいて一定速度の維持に必要なトルク力を計算する方式で、第２トルク力を計算する。
【００２７】
一実施形態では、ＡＤＶの現在の速度の二次（a second order of the current speed）に基づいてＡＤＶに作用する風の抵抗を決定する。ＡＤＶの現在の速度の一次（a first order of the current speed）に基づいてＡＤＶに作用する摩擦力を決定する。
【００２８】
一実施形態では、システムは、ＡＤＶの目標速度を決定し、ＡＤＶの実際速度を決定し、比例−積分−微分（ＰＩＤ）コントローラでＡＤＶに用いられるトルク力を計算して、目標速度と実際速度との間の差を最小化させる方式で、第３トルク力を計算する。別の実施形態では、第１、第２及び第３トルク力を加算することでスロットル−ブレーキトルク力を計算する。
【００２９】
一実施形態では、それぞれＡＤＶの現在の速度の一次と二次に比例した係数によって摩擦力と風の抵抗をモデリングする。ＰＩＤコントローラは、比例、積分及び微分係数でモデリングされてもよい。これらの係数はデータ分析システム（例えば、データ分析システム又はサーバ１０３）が大量の運転統計データに基づいてオフラインで設定されてもよい。
【００３０】
一実施形態では、データ分析システム１０３はデータコレクタ１２１と機器学習エンジン１２２を備える。データコレクタ１２１は各種の車両から運転統計データ１２３を収集する。運転統計データ１２３は、ＡＤＶの目標速度と実際速度に関連する情報、参照時間のＧＰＳ位置、ＡＤＶのブランド／モデル、車両ＩＤ番号、計画ルート及び運転環境のセンサ出力（例えば天气と道路状況）を含んでもよい。機器学習エンジン１２２は、運転統計データ１２３を分析することで、ＴＦモデル１２４に適した係数を学習して決定し、摩擦力、風の抵抗及び安定したＰＩＤコントローラ応答を示す。次に、ＴＦモデル１２４は、それから自律走行車１０１の感知・計画システム１１０にアップロードされて、速度制御の決定に用いられてもよい。
【００３１】
図３は、本発明の一実施形態に係る自律走行車と共に使用される感知及び計画システムの実例を示すブロック図である。システム３００は、図１の自律走行車１０１の一部（感知及び計画システム１１０、制御システム１１１及びセンサシステム１１５を含むが、これらに制限されない）となるように実現されることができる。図３を参照し、感知及び計画システム１１０は、位置決めモジュール３０１と、感知モジュール３０２と、決定モジュール３０３と、計画モジュール３０４と、制御モジュール３０５とを含むが、これらに制限されない。
【００３２】
モジュール３０１〜３０５における一部又は全部は、ソフトウェア、ハードウェア又はその組み合わせで実現されてもよい。例えば、これらのモジュールは、永続的記憶装置３５２に取り付けられ、メモリ３５１にロードされ、かつ１つ以上のプロセッサ（図示せず）により実行されてもよい。注意すべきなのは、これらのモジュールにおける一部又は全部は、図２の車両制御システム１１１の一部又は全部のモジュールに通信可能に接続されてもよく、一体化されてもよい。モジュール３０１〜３０５における一部は、一緒に集積モジュールとして一体化されてもよい。
【００３３】
位置決めモジュール３０１（地図及びルーティングモジュールとも言われる）は、ユーザの旅程又はルートに関連する任意のデータを管理する。ユーザは、例えばユーザインターフェースを介してログインするとともに旅程の出発位置及び目的位置を指定してもい。位置決めモジュール３０１は、旅程に関連するデータを取得するように、自律走行車３００のその他の構成要素（例えば地図及びルート情報３１１）と通信する。例えば、位置決めモジュール３０１は、位置サーバと、地図及びＰＯＩ（ＭＰＯＩ）サーバから位置及びルート情報を取得することができる。位置サーバは、位置サービスを提供し、かつＭＰＯＩサーバは、地図及びルート情報３１１の一部としてキャッシュされてもよい地図サービスと特定な位置のＰＯＩとを提供する。自律走行車３００がルートに沿って移動する時に、位置決めモジュール３０１は、さらに交通情報システムやサーバからリアルタイム交通情報を取得することができる。
【００３４】
センサシステム１１５により提供されたセンサデータ、及び位置決めモジュール３０１により得られた位置決め情報に基づいて、感知モジュール３０２は周辺環境に対する感知を決定する。感知情報は、普通の運転者が自分で運転している車両周辺から感知したもの（状況）を示すことができる。感知は、例えば対象形式で現される車線配置（例えば、ストレート又はカーブ）、トラフィック信号、他の車両の相対位置、歩行者、建築物、横断歩道又はその他の交通関連標識（例えば、停止標識、譲り標識）などを含んでもよい。
【００３５】
感知モジュール３０２は、コンピュータビジョンシステム又はコンピュータビジョンシステムの機能を含んでもよく、自律走行車環境における対象及び／又は特徴を認識するように、１つ以上のカメラによりキャプチャされた画像を処理及び分析することに用いられる。前記対象は交通信号、車道の境界線、他の車両、歩行者及び／又は障害物等を含んでもよい。コンピュータビジョンシステムは、対象認識アルゴリズム、ビデオトラッキング及びその他のコンピュータビジョン技術を使用することができる。いくつかの実施形態において、コンピュータビジョンシステムは、環境をマッピングし、対象を追跡し、かつ対象の速度を推定することなどができる。感知モジュール３０２は、その他のセンサ（例えばレーダー及び／又はＬＩＤＡＲ）により提供されたその他のセンサデータに基づいて対象を検出することもできる。
【００３６】
それぞれの対象に対して、決定モジュール３０３は、如何に対象を処理する決定をする。例えば、特定な対象（例えば、交差ルートにおける他の車両）及び対象を記述するメタデータ（例えば、速度、方向、ステアリング角）に対して、決定モジュール３０３は、遇う対象に如何に対応する（例えば、追い越し、道譲り、停止、通過）ことを決定する。決定モジュール３０３は、永続記憶装置３５２（図示せず）に記憶されてもよい１セットのルール（例えば交通ルール）に基づいてこのような決定をすることができる。
【００３７】
感知したそれぞれ対象に対する決定に基づいて、計画モジュール３０４は、自律走行車のためにルート又は経路及び運転パラメータ（例えば、距離、速度及び／又はステアリング角）を計画する。すなわち、所定対象に対して、決定モジュール３０３は前記対象に対して如何に対応するかを決定し、計画モジュール３０４は如何に実行するかを決定する。例えば、所定対象に対して、決定モジュール３０３は、前記対象を追い越すことを決定することができ、計画モジュール３０４は、前記対象の左側に追い越すか、右側に追い越すかを決定することができる。計画モジュール３０４は、計画及び制御データを生成し、車両３００が次の移動周期（例えば、次のルート／経路セグメント）に如何に移動するかを記述する情報を含む。例えば、計画及び制御データは車両３００が毎時間３０マイル（ｍｐｈ）の速度で１０メートル移動し、次に２５ｍｐｈの速度で右車線まで変わることを指示することができる。
【００３８】
計画及び制御データに基づいて、制御モジュール３０５は計画及び制御データにより定義されたルート又は経路に基づいて、車両制御システム１１１へ適切な命令又は信号を送信することによって自律走行車を制御及び運転する。前記ルート又は経路に沿って違う場所で適時に適切な車両設置又は運転パラメータ（例えば、スロットル、ブレーキ及びステアリング命令）を使用して車両を第１点から第２点まで運転するように、計画及び制御データは十分な情報を含む。
【００３９】
注意すべきなのは、決定モジュール３０３及び計画モジュール３０４は、集積モジュールに一体化されてもよい。決定モジュール３０３／計画モジュール３０４は、自律走行車の運転経路を決定するために、ナビゲーションシステム又はナビゲーションシステムの機能を含んでもよい。例えば、ナビゲーションシステムは、自律走行車が以下の経路に沿って移動することを実現するための一連の速度及びディレクショナ進行方向を決定することができ、前記経路は、自律走行車を総体的に最終目的位置を向けて通じる車線経路に進ませると同時に、基本的に感知された障害物を避けることができる。目的地はユーザインターフェースシステム１１３により実現されたユーザ入力に基づいて設置できる。ナビゲーションシステムは、自律走行車が走行していると同時に走行経路を動的に更新することができる。ナビゲーションシステムは、自律走行車用の走行経路を決定するように、ＧＰＳシステム及び１つ以上の地図からのデータを合併することができる。
【００４０】
決定モジュール３０３／計画モジュール３０４は、自律走行車環境における潜在障害物を、認識・評価・回避又はその他の方式で迂回するために、衝突回避システム又は衝突回避システムの機能をさらに含んでもよい。例えば、衝突回避システムは、以下の方式によって自律走行車のナビゲーションにおける変更を実現することができ、制御システム１１１の中の１つ以上のサブシステムを動作してターン操縦、ステアリング操縦、ブレーキ操縦等を採る。衝突回避システムは、周辺の交通モード、道路状況等に基づいて障害物を回避可能な操縦を自動的に決定することができる。衝突回避システムは、その他のセンサシステムは、自律走行車がターンして入ろうとする隣接領域における車両、建築障害物等を検出する際にターン操縦を採らないように配置できる。衝突回避システムは、使用可能でありかつ自律走行車の乗員の安全性を最大化させる操縦を自動的に選択することができる。衝突回避システムは、自律走行車の乗員室内で最小の加速度を出現させることが予測された回避操縦を選択することができる。
【００４１】
図４は一実施形態に係る制御モジュール３０５を示す。制御モジュール３０５は、加速度ＴＦサブモジュール４０５、維持速度ＴＦサブモジュール４１０及び速度差ＴＦサブモジュール４１５を備える。これらのモジュールは、それぞれ自律走行車を加速させるための第１トルク力（ＴＦａｃｃ）、一定速度ｎを維持する第２トルク力（ＴＦｍ）及び車両の目標速度と実際速度との間の速度差を最小化させる第３トルク力（ＴＦｄｉｆｆ）を計算することに用いられる。この３つのモジュールの入力のいずれも目標車両速度４０１の入力を含む。出力は制御システム１１１により送信されたスロットル−ブレーキコマンドと最終的な実際車両速度４２０である。実際車両速度４２０を例えば、速度差ＴＦサブモジュール４１５（例えば、次のコマンド周期）の第２入力として制御モジュール３０５にフィードバックされる。
【００４２】
加速度ＴＦサブモジュール４０５はＡＤＶの現在の速度に増加、又は現在の速度まで減少するために必要な加速度トルク力を計算する。図５は一実施形態に係る加速度トルク力を示すＴＦモデル３１２の速度-距離（speed versus distance）グラフである。図５に示すように、グラフは目標速度５０１、実際速度５０５及びＡＤＶの偏差又は速度差５１０を示す。コマンド遅延を配慮し、目標速度５０１における２つの点に基づいて加速度トルク力を計算する。例えば、スロットル制御コマンドを用いると決定する場合、加速度ＴＦサブモジュール４０５は、スロットル制御のコマンド遅延、スロットルコマンド遅延を配慮した第１目標速度（すなわち、コマンド遅延後の第１目標速度がどのぐらいになるか）及びスロットルコマンド遅延を配慮した第２目標速度（すなわち、コマンド遅延後の第２（又は次の）目標速度がどのぐらいになるか）を決定する。加速度ＴＦサブモジュール４０５は、時間に対するコマンド遅延を配慮した目標速度の導関数を取ることでＡＤＶ加速に必要なトルク又は回転力を計算する。導関数は、以下のように、第１時間と第２時間の変数でそれぞれ割る第１と第２目標速度の変数又は変更に基づいて計算することができ、
例えば、
2019501809.tif 000003
式中、ｋは速度、ｔは時間を示す。ＡＤＶが一定の質量と車輪半径を有する場合は、スロットルコマンド遅延を配慮し、トルク又は回転力（ＴＦ）は加速度に比例し、例えば、ＴＦａｃｃを示すＴＦモデル３１２は、
2019501809.tif 000004
であってもよい。
【００４３】
スロットルコマンドの数学モデルに基づいて、トルク又は回転力をスロットルコマンドに変換する。一実施形態によれば、スロットルコマンドの実例としては、
2019501809.tif 000005
であってもよい。
【００４４】
一実施形態では、ａは約８．５、ｂは約−０．６３、ｃは推定したスロットル制御コマンド遅延である。一実施形態では、コマンド遅延が１秒のスロットル制御に対して、ｃは約１．０である。
【００４５】
別の実例では、ブレーキ制御を用いると決定する場合、加速度ＴＦサブモジュール４０５はブレーキ制御のコマンド遅延、ブレーキコマンド遅延を配慮した第１目標速度、ブレーキコマンド遅延を配慮した第２目標速度（又はブレーキ制御を用いた後の次の目標速度）を決定し、ＡＤＶから速度を減算することに必要なトルク又は回転力を決定する。ブレーキコマンドの数学モデルに基づいて、トルク又は回転力をブレーキコマンドに変換する。一実施形態によれば、ブレーキ制御コマンドの一例としては、  
2019501809.tif 000006
であってもよい。
【００４６】
一実施形態では、ａは約４０．０、ｂは約−０．１、ｃは推定したブレーキ制御コマンド遅延である。一実施形態では、コマンド遅延が０．２秒のブレーキ制御に対して、ｃは約０．２である。
【００４７】
図５（速度差５１０が約２メートル／秒で変化する）に示すように、加速度トルク力を示すＴＦモデル３１２は加速度と減速度を処理するが、ＡＤＶ速度は風の抵抗と摩擦力のため徐々に減少する。加速度トルク力と維持速度トルク力を示すＴＦモデル３１２は徐々に減速することを防止する。維持速度トルク力は運転者が定期的にスロットル制御を用いることに対応し、車両の安定速度を維持する。
【００４８】
図６は一実施形態に係る、加速度トルク力と維持速度トルク力を含むＴＦモデル３１２の速度-距離グラフである。加速度トルク力は上記した加速度ＴＦサブモジュール４０５で計算される。維持速度ＴＦサブモジュール４１０は、ＡＤＶの安定速度の維持に必要なトルク又は回転力を計算して、例えば、風の抵抗と摩擦力（例えば、内部機械摩擦）に抵抗する。図６はＡＤＶの目標速度６０１、実際速度６０５及び目標速度６０１と実際速度６０５の間の偏差又は速度差６１０を示す。図に示すように、速度差６１０は１メートル／秒より小さいマージンで変化する。
【００４９】
一実施形態では、自律走行車の現在の速度、ＡＤＶに作用する摩擦力及びＡＤＶに作用する風の抵抗を決定することによって、ＡＤＶの安定速度の維持に必要なトルク又は回転力を計算してもよい。自律走行車１０１の感知・計画システム１１０の制御モジュール３０５は最近収集したデータに基づいて摩擦力と風の抵抗を計算してもよい。例えば、数式
2019501809.tif 000007
（ｋはＡＤＶの現在の速度であり、
2019501809.tif 000008
は風の抵抗の定数を示し、
2019501809.tif 000009
と
2019501809.tif 000010
はＡＤＶに作用する摩擦力の定数を示す）を有するＴＦモデル３１２に基づいて、摩擦力と風の抵抗を計算してもよい。
2019501809.tif 000011
、
2019501809.tif 000012
及び
2019501809.tif 000013
はあらかじめデータ分析システム１０３でオフラインで計算されてもよい。一実施形態では、
2019501809.tif 000014
、
2019501809.tif 000015
及び
2019501809.tif 000016
は類似した車両ブランド／モデルにおいて共有されている。別の実施形態では、
2019501809.tif 000017
、
2019501809.tif 000018
及び
2019501809.tif 000019
は特定車両又は特定タイプの車両に固有のものであってもよい。
【００５０】
図７Ａは一実施形態に係る、３メートル／秒の初期速度偏差と伴う状況で加速度トルク力と維持トルク力を含むＴＦモデル３１２の速度-距離グラフである。図７Ａに示されるこの例示では、ＴＦａｃｃとＴＦｍに基づいて総ＴＦを計算する。図に示すように、初期速度偏差は走行過程にわたって速度差７０４に存在する。加速度トルク力と維持速度トルク力を示すＴＦモデル３１２は加速度と減速度を処理し、徐々に減速することを防止するが、実際速度と目標速度との間の初期速度偏差（速度差／初期誤差）を処理していない。初期誤差減少トルク力（initial error reduction torque force）を有するＴＦモデル３１２（例えば、閉ループ制御）は当該初期速度偏差を最小化させる。
【００５１】
図７Ｂは一実施形態に係る、５メートル／秒の初期速度偏差と伴う状況で加速度トルク力、維持トルク力及び初期誤差減少トルク力を含むＴＦモデル３１２の速度-距離グラフである。加速度トルク力と維持速度トルク力は、それぞれ上記した加速度ＴＦサブモジュール４０５と維持速度ＴＦサブモジュール４１０で計算される。誤差減少ＴＦサブモジュール４１０は速度と外部干渉の任意の初期偏差の補正に必要なトルク力を計算する。図７Ｂは、ＡＤＶの目標速度７０１、実際速度７０５及び目標速度と実際速度との間の速度偏差又は速度差７１０を示す。図に示すように、ＡＤＶは約５メートル／秒の初期速度偏差７１０を有する。ＡＤＶが約３０メートル走行した後に、ＡＤＶの実際速度７０５は、最終的に約１メートル／秒より小さいマージンで目標速度７０１を追従する。
【００５２】
一実施形態では、比例−積分−微分（ＰＩＤ）コントローラで誤差を計算してトルク力を減少させてもよい。ＰＩＤコントローラは工業制御システムで一般的に使用される制御ループフィードバックメカニズムである。ＰＩＤコントローラは、それぞれＰ、Ｉ及びＤに示される比例項、積分項及び微分項に基基づいて、目標値と実際値との間の差とする誤差値を連続的に計算して補正を用いる。例えば、ＴＦモデル３１２は、初期誤差減少トルク力用の数式として、
2019501809.tif 000020
（式中、
2019501809.tif 000021
は減少しようとする目標と実際速度との間の初期誤差又は差、Ｋｐ、Ｋｉ及びＫｄはＰＩＤコントローラの比例、積分及び微分の定数である。）を含んでもよい。最初、ＰＩＤコントローラの定数Ｋｐ、Ｋｉ及びＫｄを訓練したり調整したりしなければならない。一実施形態では、ＰＩＤ定数は、機器学習エンジン１２２でデータ分析システム１０３における大量の運転統計データ１２３に基づいてオフラインで調整されてもよい。別の実施形態では、ＡＤＶの操作期間に、感知・計画システム１１０の制御モジュール３０５はＰＩＤ定数を調整してもよい。一実施形態では、ＰＩＤコントローラはシミュレートハードウェア装置で実施されてもよい。別の実施形態では、ＰＩＤコントローラはソフトウェアプログラムで実施されてもよい。
【００５３】
図８は一実施形態に係るスロットル−ブレーキトルク力の計算手順を示すフローチャートである。手順８００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含んでもよい処理ロジックで実行されてもよい。例えば、手順８００は自律走行車の制御モジュール（例えば、感知・計画システム１１０の制御モジュール３０５）で実行されてもよい。図８に示すように、ブロック８０１において、処理ロジックは自律走行車（ＡＤＶ）を加速させるための第１トルク力を計算する。ブロック８０２において、処理ロジックはＡＤＶの一定の車両速度を維持するための第２トルク力を計算する。ブロック８０３において、処理ロジックはＡＤＶの実際速度と目標速度との間の差を最小化させるための第３トルク力を計算する。ブロック８０４において、処理ロジックは第１、第２及び第３トルク力に基づいてスロットル−ブレーキトルク力を決定する。ブロック８０５において、感知・計画システム１１０の制御モジュール３０５はスロットル−ブレーキトルク力に基づいてＡＤＶの次の速度を制御する。
【００５４】
図９は一実施形態に係るブロック８０１における第１トルク力の計算手順を示すフローチャートである。手順９００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含んでもよい処理ロジックで実行されてもよい。例えば、手順９００は、自律走行車の制御モジュール（例えば、感知・計画システム１１０の制御モジュール３０５）で実行されてもよい。図９に示すように、ブロック９０１において、処理ロジックは自律走行車の目標速度を示す第１速度を決定して、第１参照時間に自律走行車を操縦する。ブロック９０２において、処理ロジックは自律走行車の目標速度を示す第２速度を決定して、第２参照時間に自律走行車を操縦する。ブロック９０３において、コマンド遅延を配慮し、処理ロジックは第１速度と第２速度に基づいて加速度トルク力を計算する。
【００５５】
図１０は一実施形態に係るブロック８０２における第２トルク力の計算過程を示すフローチャートである。過程１０００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含んでもよい処理ロジックで実行されてもよい。例えば、過程１０００は、自律走行車の制御モジュール（例えば、感知・計画システム１１０の制御モジュール３０５）で実行されてもよい。図１０に示すように、ブロック１００１において、処理ロジックは自律走行車の現在の速度を決定する。ブロック１００２において、処理ロジックは自律走行車に作用する摩擦力を決定する。ブロック１０３において、処理ロジックは自律走行車に作用する風の抵抗を決定する。ブロック１０４において、処理ロジックは現在の速度、摩擦力及び風の抵抗に基づいて自律走行車の現在の速度の維持に必要なトルク力を計算する。
【００５６】
図１１は一実施形態に係るブロック８０３における第３トルク力の計算手順を示すフローチャートである。手順１１００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含んでもよい処理ロジックで実行されてもよい。例えば、手順１１００は自律走行車の制御モジュール（例えば、感知・計画システム１１０の制御モジュール３０５）で実行されてもよい。図１１に示すように、ブロック１１０１において、処理ロジックは自律走行車の目標速度を計算する。ブロック１１０２において、処理ロジックは自律走行車の実際速度を決定する。ブロック１１０３において、処理ロジックは目標速度と実際速度との間の差を最小化させるトルク力を比例−積分−微分（ＰＩＤ）コントローラで計算する。
【００５７】
注意すべきなのは、前記の示されたとともに記述された一部又は全部の構成要素は、ソフトウェア、ハードウェア又はその組み合わせで実現されることができる。例えば、このような構成要素は、永続記憶装置にインストールされるとともに記憶されたソフトウェアとして実現されてもよく、前記ソフトウェアは、本出願にわたって記載の手順又は動作を実施するように、プロセッサ（図示せず）でメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路（例えば特定用途向けＩＣ又はＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ））にプログラミングされ又は嵌め込みされた専用ハードウェアにおける実行可能なコードとして実現されてもよく、前記実行可能なコードは、アプリケーションからの対応するドライバープログラム及び／又はオペレーティングシステムによってアクセスされてもよい。なお、このような構成要素は、プロセッサ又はプロセッサコアにおける特定のハードウェアロジックとして実現されてもよく、ソフトウェア構成要素が１つ以上の特定命令によってアクセス可能な命令セットの一部とする。
【００５８】
図１２は、本出願の一実施形態と組み合わせて使用されるデータ処理システムを例示的に示すブロック図である。例えば、システム１５００は、上記手順又は方法のいずれか（例えば、感知及び計画システム１１０、及び図１のサーバ１０３〜１０４のいずれか）を実行する上記任意のデータ処理システムを示してもよい。システム１５００は、多数の異なる構成要素を含んでもよい。これらの構成要素は、集積回路（ＩＣ）、集積回路の一部、分散型電子装置又は回路基板に適用された他のモジュール（例えばコンピュータシステムのマザーボード又はアドインカード）、又は他の方式でコンピュータシステムのシャシーに組み込まれた構成要素として実現されることができる。
【００５９】
さらに、システム１５００は、コンピュータシステムの多数の構成要素の高レベルビューを示すことを目的とする。しかしながら、いくつかの実現形態では、付加的構成要素が存在する場合があることを理解すべきである。また、他の実現形態において示される構成要素が異なる配置を有してもよい。システム１５００は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレーヤー、パーソナルディジタルアシスタント（ＰＤＡ）、スマート腕時計、パーソナルコミュニケーター、ゲーム装置、ネットワークルータ又はハブ、無線アクセスポイント（ＡＰ）又はリピーター、セットトップボックス、又はそれらの組合せを示してもよい。また、単一の機器又はシステムのみを示したが、用語「機器」又は「システム」は、さらに、独立又は共同で１つ（又は複数）の命令セットを実行することにより本明細書に説明される任意の１種又は複数種の方法を実行する機器又はシステムの任意のセットを含むことを理解すべきである。
【００６０】
一実施形態において、システム１５００は、バス又は相互接続部材１５１０によって接続されたプロセッサ１５０１、メモリ１５０３及び装置１５０５〜１５０８を備える。プロセッサ１５０１は、単一のプロセッサコア又は複数のプロセッサコアを含む単一のプロセッサ又は複数のプロセッサであってもよい。プロセッサ１５０１は、マイクロプロセッサ、中央処理装置（ＣＰＵ）等のような１つ又は複数の汎用プロセッサであってもよい。より具体的には、プロセッサ１５０１は、複雑命令セット計算（ＣＩＳＣ）マイクロプロセッサ、縮小命令セットコンピュータ（ＲＩＳＣ）マイクロプロセッサ、超長命令語（ＶＬＩＷ）マイクロプロセッサ、又は他の命令セットを実現するプロセッサ、又は命令セットの組合せを実現するプロセッサであってもよい。プロセッサ１５０１は、さらに、専用集積回路（ＡＳＩＣ）、セルラ又はベースバンドプロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタル信号プロセッサ（ＤＳＰ）、ネットワークプロセッサ、グラフィックプロセッサ、ネットワークプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような１つ又は複数の専用プロセッサ、あるいは命令処理可能な任意の他のタイプのロジックであってもよい。
【００６１】
プロセッサ１５０１（超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよい）は、前記システムの各種構成要素と通信するための主処理ユニット及び中央ハブとして用いられてもよい。このようなプロセッサは、システムオンチップ（ＳｏＣ）として実現されることができる。プロセッサ１５０１は、命令を実行することにより本明細書に説明される動作及びステップを実行するための命令を実行するように構成される。また、システム１５００は、選択可能なグラフィックサブシステム１５０４と通信するグラフィックインターフェースをさらに含み、グラフィックサブシステム１５０４は、表示コントローラ、グラフィックプロセッサ及び／又は表示装置をさらに備えてもよい。
【００６２】
プロセッサ１５０１は、メモリ１５０３と通信してもよく、メモリ１５０３は、一実施形態において複数のメモリによって所定量のシステムメモリを提供する。メモリ１５０３は、ランダムアクセスメモリ（ＲＡＭ）、動的ＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、静的ＲＡＭ（ＳＲＡＭ）又は他のタイプのメモリのような１つ又は複数の揮発性記憶装置（又はメモリ）を備えてもよい。メモリ１５０３は、プロセッサ１５０１又は任意の他の装置により実行される命令列を含む情報を記憶できる。例えば、複数種のオペレーティングシステム、装置ドライバー、ファームウェア（例えば、基本入出力システム又はＢＩＯＳ）及び／又はアプリケーションの実行可能なコード及び／又はデータはメモリ１５０３にロードされてもよく、プロセッサ１５０１により実行される。オペレーティングシステムは、ロボットオペレーティングシステム（ＲＯＳ）、Ｍｉｃｒｏｓｏｆｔ（登録商標）会社からのＷｉｎｄｏｗｓ（登録商標）オペレーティングシステム、アップル会社からのＭａｃ  ＯＳ（登録商標）／ｉＯＳ（登録商標）、Ｇｏｏｇｌｅ（登録商標）会社からのＡｎｄｒｏｉｄ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ｕｎｉｘ又は他のリアルタイム又は組み込みオペレーティングシステムのような任意のタイプのオペレーティングシステムであってもよい。
【００６３】
システム１５００は、ＩＯ装置、例えば装置１５０５〜１５０８をさらに備えてもよく、ネットワークインターフェース装置１５０５、選択可能な入力装置１５０６及び他の選択可能なＩＯ装置１５０７を備える。ネットワークインターフェース装置１５０５は、無線送受信機及び／又はネットワークインターフェースカード（ＮＩＣ）を備えてもよい。前記無線送受信機は、ＷｉＦｉ送受信機、赤外送受信機、ブルートゥース（登録商標）送受信機、ＷｉＭａｘ送受信機、無線セルラーホン送受信機、衛星送受信機（例えば、全地球測位システム（ＧＰＳ）送受信機）又は他の無線周波数（ＲＦ）送受信機又はそれらの組合せであってもよい。ＮＩＣはイーサネット（登録商標）カードであってもよい。
【００６４】
入力装置１５０６は、マウス、タッチパッド、タッチスクリーン（それは表示装置１５０４と一体化されてもよい）、ポインタデバイス（例えばスタイラス）及び／又はキーボード（例えば、物理キーボード又はタッチスクリーンの一部として表示された仮想キーボード）を備えてもよい。例えば、入力装置１５０６は、タッチスクリーンに接続されるタッチスクリーンコントローラを含んでもよい。タッチスクリーン及びタッチスクリーンコントローラは、例えば複数種のタッチ感度技術（容量、抵抗、赤外及び表面音波の技術を含むが、それらに限定されない）のいずれか、及びタッチスクリーンの１つ又は複数の接触点を決定するための他の近接センサアレイ又は他の素子を用いてそのタッチ点及び移動又は断続を検出することができる。
【００６５】
ＩＯ装置１５０７は音声装置を備えてもよい。音声装置は、スピーカ及び／又はマイクロホンを含んでもよく、それにより音声認識、音声コピー、デジタル記録及び／又は電話機能のような音声サポートの機能を促進する。他のＩＯ装置１５０７は、汎用シリアルバス（ＵＳＢ）ポート、パラレルポート、シリアルポート、印刷機、ネットワークインターフェース、バスブリッジ（例えば、ＰＣＩ−ＰＣＩブリッジ）、センサ（例えば、加速度計、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサ等のような動きセンサ）又はそれらの組合せをさらに備えてもよい。装置１５０７は、結像処理サブシステム（例えば、カメラ）をさらに備えてもよく、前記結像処理サブシステムは、カメラ機能（例えば、写真及びビデオ断片の記録）を促進するための電荷カップリング装置（ＣＣＤ）又は相補型金属酸化物半導体（ＣＭＯＳ）光学センサのような光学センサを備えてもよい。あるセンサは、センサハブ（図示せず）によって相互接続部材１５１０に接続されてもよく、キーボード又は熱センサのような他の装置は、組み込みコントローラ（図示せず）により制御されてもよく、これはシステム１５００の特定配置又は設計により決められる。
【００６６】
データ、アプリケーション、１つ又は複数のオペレーティングシステム等のような情報の永続記憶を提供するために、大容量メモリ（図示せず）は、プロセッサ１５０１に接続されてもよい。様々な実施形態において、薄型化と軽量化のシステム設計を実現しかつシステムの応答能力を向上させるために、このような大容量メモリは、ソリッドステート装置（ＳＳＤ）によって実現されることができる。なお、他の実施形態において、大容量メモリは、主にハードディスクドライブ（ＨＤＤ）で実現されてもよく、少量のＳＳＤ記憶量は、ＳＳＤキャッシュとして停電イベント期間にコンテキスト状態及び他のこのような情報の不揮発性記憶を実現し、それによりシステム動作が再開する時に通電を速く実現することができる。さらに、フラッシュデバイスは、例えばシリアルペリフェラルインターフェース（ＳＰＩ）によってプロセッサ１５０１に接続されてもよい。このようなフラッシュデバイスは、システムソフトウェアの不揮発性記憶に用いられてもよく、前記システムソフトウェアは、前記システムのＢＩＯＳ及び他のファームウェアを備える。
【００６７】
記憶装置１５０８は、任意の１種又は複数種の本明細書に記載の方法又は機能を体現する１つ又は複数の命令セット又はソフトウェア（例えば、モジュール、ユニット及び／又はロジック１５２８）が記憶されるコンピュータアクセス可能な記憶媒体１５０９（機械可読記憶媒体又はコンピュータ可読媒体とも呼ばれる）を備えてもよい。処理モジュール／ユニット／ロジック１５２８は、例えば、制御モジュール３０５又は機器学習エンジン１２２のような上記構成要素のいずれかを示してもよい。処理モジュール／ユニット／ロジック１５２８は、さらにデータ処理システム１５００により実行される期間にメモリ１５０３内及び／又はプロセッサ１５０１内に完全又は少なくとも部分的に存在してもよく、ここで、メモリ１５０３及びプロセッサ１５０１も、機器アクセス可能な記憶媒体を構成する。処理モジュール／ユニット／ロジック１５２８は、さらにネットワークによってネットワークインターフェース装置１５０５を経由して送受信されてもよい。
【００６８】
コンピュータ可読記憶媒体１５０９は、以上に説明されたいくつかのソフトウェア機能の一部を永続的に記憶してもよい。コンピュータ可読記憶媒体１５０９は、例示的な実施形態において単一の媒体として示されたが、用語「コンピュータ可読記憶媒体」は、前記１つ又は複数の命令セットが記憶される単一の媒体又は複数の媒体（例えば、集中型又は分散型データベース、及び／又は関連するキャッシュ及びサーバ）を備えることを理解すべきである。用語「コンピュータ可読記憶媒体」は、さらに命令セットを記憶又はコーディング可能な任意の媒体を備えることを理解すべきであり、前記命令セットは、機器により実行されかつ前記機器に本発明の任意の１種又は複数種の方法を実行させる。従って、用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリ及び光学媒体と磁気媒体又は任意の他の非一時的機械可読媒体を備えるが、それらに限定されないことを理解すべきである。
【００６９】
本明細書に記載の処理モジュール／ユニット／ロジック１５２８、構成要素及び他の特徴は、ディスクリートハードウェアコンポーネントとして実現されてもよく、又はハードウェアコンポーネント（例えばＡＳＩＣs、ＦＰＧＡ、ＤＳＰ又は類似装置）の機能に統合されてもよい。さらに、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置内のファームウェア又は機能回路として実現されてもよい。また、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置及びソフトウェアコンポーネントの任意の組合せで実現されてもよい。
【００７０】
なお、システム１５００は、データ処理システムの各種の構成要素を有するように示されているが、構成要素に相互接続させる任意の具体的な構造又は方式を限定するものではないことに注意すべき、それは、このような詳細が本発明の実施形態に密接な関係がないためである。また、より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ及び／又は他のデータ処理システムは、本発明の実施形態と共に使用されてもよい。
【００７１】
上記詳細な説明の一部は、コンピュータメモリにおけるデータビットに対する演算のアルゴリズム及び記号表現で示される。これらのアルゴリズムの説明及び表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。ここで、アルゴリズムは、通常、所望の結果につながる首尾一貫した動作列（ｓｅｑｕｅｎｃｅ  ｏｆ  ｏｐｅｒａｔｉｏｎｓ）と考えられる。これらの動作とは、物理量に対して物理的動作を行う必要となるステップを指す。
【００７２】
ただし、これらの全ての及び類似の用語は、いずれも適切な物理量に関連付けられ、かつただこれらの量に適用される適切なラベルであることに注意すべきである。特に断らない限り、本出願の全体にわたって用語（例えば、添付している特許請求の範囲に説明された用語）による説明とは、コンピュータシステム又は類似の電子計算装置の動作及び処理であり、前記コンピュータシステム又は電子計算装置は、コンピュータシステムのレジスタ及びメモリに物理（例えば、電子）量としてデータを示し、かつ前記データをコンピュータシステムメモリ又はレジスタ又は他のこのような情報メモリ、伝送又は表示装置内において類似に物理量として示される他のデータに変換する。
【００７３】
本発明の実施形態は、さらに本明細書における動作を実行するための装置に関する。このようなコンピュータプログラムは、非一時的コンピュータ可読媒体に記憶される。機器可読媒体は、機器（例えば、コンピュータ）可読な形態で情報を記憶する任意の機構を備える。例えば、機器可読（例えば、コンピュータ可読）媒体は、機器（例えば、コンピュータ）可読記憶媒体（例えば、読み出し専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリメモリ）を備える。
【００７４】
上記図面に示される手順又は方法は、ハードウェア（例えば、回路、専用ロジック等）、ソフトウェア（例えば、非一時的コンピュータ可読媒体に具現化される）、又は両方の組合せを含む処理ロジックにより実行されてもよい。前記手順又は方法は、本明細書において特定の順序に応じて説明されるが、説明された動作の一部は、異なる順序に応じて実行されてもよい。また、いくつかの動作は、順番ではなく並行に実行されてもよい。
【００７５】
本発明の実施形態は、いずれかの特定のプログラミング言語を参照して説明されていないが、複数種のプログラミング言語で本明細書に記載の本発明の実施形態の教示を実現できることを理解すべきである。
【００７６】
以上の明細書では、本発明の具体的な例示的な実施形態を参照してその実施形態を説明した。明らかなように、添付している特許請求の範囲に記載の本発明のより広い趣旨及び範囲を逸脱しない限り、様々な変形が可能である。従って、限定的なものではなく例示的なものとして本明細書及び図面を理解すべきである。
【図１】
2019501809.tif 000022
【図２】
2019501809.tif 000023
【図３】
2019501809.tif 000024
【図４】
2019501809.tif 000025
【図５】
2019501809.tif 000026
【図６】
2019501809.tif 000027
【図７Ａ】
2019501809.tif 000028
【図７Ｂ】
2019501809.tif 000029
【図８】
2019501809.tif 000030
【図９】
2019501809.tif 000031
【図１０】
2019501809.tif 000032
【図１１】
2019501809.tif 000033
【図１２】
2019501809.tif 000034
【手続補正書】
【提出日】平成29年9月22日(2017.9.22)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、大体自律走行車を操作することに関する。より具体的に、本発明の実施形態は自律走行車の速度の制御に必要なトルク又は回転力の決定に関する。
【背景技術】
【０００２】
自律モード（例えば、自律運転）で走行している車両は、乗員（特に運転者）を、特定の運転に関連する責任から解放することができる。自律モードで走行している場合、車両は車載センサで様々な場所にナビゲートすることができ、それにより車両がヒューマンコンピュータインタラクションの最も少ない場合又はいくつかの乗客がない場合で運行することを可能にさせる。
【０００３】
速度制御（スロットルとブレーキ制御）は自動運転に対して重要な操作である。自律走行車はスロットル制御又はブレーキ制御を用いて、自律走行車に自動的に計画経路に従って障害物を迂回又は回避させるように操縦する必要がある。計画経路は出発位置から目標位置までの加速、減速、又は参照速度の維持を含んでもよい。しかし、車両速度制御が遅延システムであり、すなわち、自律走行車の機械的特徴が所定の時間遅延で応答し且つ外部要素（例えば摩擦力、風の抵抗、路面の急峻性及び初期誤差）が存在するため、自律走行車に目標参照速度を追従させると同時に、自律走行車（自動運転車又はＡＤＶとも呼称される）の目標速度と実際速度との間の差を最小化させることが挑戦的である。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の一態様によれば、自律走行車の速度を制御するためのコンピュータ実装方法を提供し、この方法は、
前記自律走行車を加速させるための第１トルク力を計算して、前記自律走行車を操縦するステップと、
前記自律走行車の一定速度を維持するための第２トルク力を計算するステップと、
前記第１トルク力と第２トルク力に基づいてスロットル−ブレーキトルク力を決定するステップと、
前記スロットル−ブレーキトルク力に基づいて前記自律走行車の次の速度を制御するステップと、を含む
【０００５】
本発明の別の一態様によれば、命令が記憶された非一時的な機械可読媒体を提供し、
前記命令が、プロセッサにより実行される場合、前記プロセッサに自律走行車を操縦する操作を実行させ、前記操作は、
前記自律走行車を加速させるための第１トルク力を計算して、前記自律走行車を操縦するステップと、
前記自律走行車の一定速度を維持するための第２トルク力を計算するステップと、
前記第１トルク力と第２トルク力に基づいてスロットル−ブレーキトルク力を決定するステップと、
前記スロットル−ブレーキトルク力に基づいて前記自律走行車の次の速度を制御するステップと、を含む。
【０００６】
本発明の別の一態様によれば、データ処理システムを提供し、このシステムは、プロセッサと、前記プロセッサに連結されて命令を記憶するメモリと、を備え、
前記命令が、前記プロセッサにより実行される場合、前記プロセッサに自律走行車を操縦する操作を実行させ、前記操作は、
前記自律走行車を加速させるための第１トルク力を計算して、前記自律走行車を操縦するステップと、
前記自律走行車の一定速度を維持するための第２トルク力を計算するステップと、
前記第１トルク力と第２トルク力に基づいてスロットル−ブレーキトルク力を決定するステップと、
前記スロットル−ブレーキトルク力に基づいて前記自律走行車の次の速度を制御するステップと、を含む。
【０００７】
本発明の実施形態は、図面の各図に限定されるのではなく例示的に示され、図面において、同じ参照符号が類似する要素を示す。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態に係るネットワーク化システムを示すブロック図である。
【図２】本発明の一実施形態に係る自律走行車の実例を示すブロック図である。
【図３】本発明の一実施形態に係る自律走行車とともに使用する感知・計画システムの実例を示すブロック図である。
【図４】本発明の一実施形態に係る感知・計画システムの制御モジュールの実例を示すブロック図である。
【図５】本発明の一実施形態に係るＴＦＡＣＣを用いる自律車両の移動距離に対する目標速度、実際速度、及び目標速度と実際速度（メートル／秒）との差のグラフである。
【図６】本発明の一実施形態に係るＴＦＡＣＣ＋ＴＦＭを用いる自律車両の移動距離に対する目標速度、実際速度、及び目標速度と実際速度（メートル／秒）の差のグラフである。
【図７Ａ】本発明の一実施形態に係る初期速度偏差を伴う状況で、ＴＦＡＣＣ＋ＴＦＭを用いる自律走行車の走行距離に対する目標速度、実際速度及び目標速度と実際速度（メートル／秒）との間の差のグラフである。
【図７Ｂ】本発明の一実施形態に係る初期速度偏差を伴う状況で、ＴＦＡＣＣ＋ＴＦＭ＋ＴＦＤＩＦＦを用いる自律走行車の走行距離に対する目標速度、実際速度及び目標速度と実際速度（メートル／秒）との間の差のグラフである。
【図８】本発明の一実施形態に係る自律走行車（ＡＤＶ）の速度を制御するためのスロットル−ブレーキトルク又は回転力（ＴＦ）を計算する手順を示すフローチャートである。
【図９】本発明の一実施形態に係るＡＤＶの加速度トルク又は回転力（ＴＦＡＣＣ）を計算する手順を示すフローチャートである。
【図１０】本発明の一実施形態に係るＡＤＶの摩擦力と風の抵抗を克服するための維持トルク又は回転力（ＴＦＭ）を計算する手順を示すフローチャートである。
【図１１】本発明の一実施形態に係るＡＤＶの外部干渉と初期誤差（例えば、実際速度と目標速度との間の速度差）を最小化させるためのトルク又は回転力（ＴＦＤＩＦＦ）を計算する手順を示すフローチャートである。
【図１２】一実施形態に係るデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【０００９】
以下、検討した詳細を参照して本発明の様々な実施形態及び態様を説明し、添付の図面は、前記様々な実施形態を示す。以下の説明及び図面は、本発明の例示であり、本発明を限定するものとして解釈されるべきではない。本発明の様々な実施形態の完全な理解を提供するために、多くの詳細が記載されている。しかしながら、場合によって、本発明の実施形態の説明の簡潔さから、周知又は従来の詳細は記載されていない。
【００１０】
本明細書において、「一実施形態」又は「実施形態」とは、当該実施形態に説明した特定の特徴、構造、又は特性を本発明の少なくとも１つの実施形態に含めることができることを意味する。本明細書を通じて使用される「一実施形態では」という語句は、必ずしもすべて同じ実施形態を指すとは限らない。明細書における「トルク力」（ＴＦ）とは、トルク又は回転力を意味する。
【００１１】
いくつかの実施形態によれば、感知及び計画システムの制御モジュールは、自律走行車（ＡＤＶ）のスロットル又はブレーキ制御をどのぐらい及びいつ用いるかを決定し、ＡＤＶに計画経路の障害物を迂回し又は回避するように操縦する。計画経路は、加速、減速、又は参照速度の維持を含んでもよい。
【００１２】
一実施形態において、制御モジュールは、自律走行車を加速させるための第１トルク力を計算して、自律走行車を操縦し、参照速度を維持するための第２トルク力（例えば、摩擦力と風の抵抗を克服する）を計算し、車両速度の初期差及び車両速度に影響するＡＤＶの外部干渉（例えば、急な坂において走行する）を最小化させる第３トルク力を計算する。速度制御システムは第１トルク力、第２トルク力及び第３トルク力に基づいてスロットル制御又はブレーキ制御（スロットル−ブレーキ）トルク力を決定し、決定されたスロットル−ブレーキトルク力に基づいてＡＤＶの次の速度を制御する。
【００１３】
一実施形態において、第１トルク力は、ＡＤＶの第１目標速度を決定して、第１参照時間にＡＤＶを操縦するステップと、ＡＤＶの第２目標速度を決定して、第２参照時間にＡＤＶを操縦するステップと、制御命令を出す時間から実際の速度出力が観測されたまでの機械コマンド遅延を配慮して第１目標速度と第２目標速度に基づいて加速度トルク力を計算して第１トルク力とするステップと、によって計算される。別の実施形態では、コマンド遅延は加速度制御を応用するＡＤＶと減速度制御を応用するＡＤＶとに対して異なる。別の実施形態では、第１目標速度と第２目標速度との間の差を取得して、第１参照時間と第２参照時間の間の差で割ることで第１ルク力を計算する。
【００１４】
一実施形態において、第２トルク力は、ＡＤＶの現在の速度を決定するステップと、ＡＤＶに作用する摩擦力を決定するステップと、ＡＤＶに作用する風の抵抗を決定するステップと、現在の速度、摩擦力及び風の抵抗に基づいて、参照時間内に安定速度に維持に用いられるトルク力を計算するステップと、によって計算される。別の実施形態では、ＡＤＶの現在の速度の二次微分に基づいて風の抵抗を決定し、ＡＤＶの現在の速度の一次微分に基づいて摩擦力を決定する。
【００１５】
一実施形態において、第３トルク力は、ＡＤＶの目標速度を決定するステップと、ＡＤＶの実際速度を決定するステップと、比例−積分−微分（ＰＩＤ）コントローラで目標速度と実際速度に基づいて速度の初期オフセット及びＡＤＶの任意の外部干渉（例えば、急な坂において走行する）を計算するステップと、によって計算される。別の実施形態では、第１トルク力と、第２トルク力と、第３トルク力とを加算することでスロットル−ブレーキトルク力を計算する。
【００１６】
図１は本発明に係る一実施形態に係る自律走行車のネットワーク配置を示すブロック図である。図１を参照して、ネットワーク配置１００はネットワーク１０２によって１つ以上のサーバ１０３〜１０４に通信可能に接続することができる自律走行車１０１を含む。１つの自律走行車を示すが、ネットワーク１０２によって複数の自律走行車は互いに接続され、及び／又はサーバ１０３〜１０４に接続されることができる。ネットワーク１０２は、任意のタイプのネットワーク、例えば有線又は無線のローカルエリアネットワーク（ＬＡＮ）、例えばインターネット、セルラーネットワーク、衛星ネットワークの広域ネットワーク（ＷＡＮ）又はその組み合わせであってもよい。サーバ１０３〜１０４は任意のタイプのサーバ又はサーバクラスタ、例えばＷｅｂサーバ又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ又はその組み合わせであってもよい。サーバ１０３〜１０４は、データ分析サーバ、内容サーバ、交通情報サーバ、地図（マップ）及び興味のあるポイント（ＭＰＯＩ）サーバ又は位置サーバ等であってもよい。
【００１７】
自律走行車とは、自律モードになるように配置できる車両を指し、前記自律モードで車両が運転者からの入力が非常に少ない又はない場合にもナビゲーションして環境を通過する。このような自律走行車は、センサシステムを含んでもよく、前記センサシステムは車両走行環境に関連する情報を検出するように配置される１つ以上のセンサを有する。前記車両及びその関連するコントローラは検出した情報を使用してナビゲーションし環境を通過する。自律走行車１０１は、手動モード、完全自律モード又は部分自律モードで運行することができる。
【００１８】
一実施形態において、自律走行車１０１は、感知及び計画システム１１０と、車両制御システム１１１と、無線通信システム１１２と、ユーザインターフェースシステム１１３と、センサシステム１１５とを含むが、これらに制限されない。自律走行車１０１は、通常の車両に含まれるある一般的な構成要素（部材）、例えばエンジン、車輪、ハンドル、変速器等をさらに含んでもよく、前記構成要素は、車両制御システム１１１及び／又は感知及び計画システム１１０により多種の通信信号及び／又は命令（例えば加速度信号又は命令、減速信号又は命令、ステアリング信号又は命令、ブレーキ信号又は命令等）を使用して制御することができる。
【００１９】
構成要素１１０〜１１５は、インターコネクト、バス、ネットワーク又はそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素１１０〜１１５は、コントローラローカルエリアネットワーク（ＣＡＮ）バスを介して互いに通信可能に接続することができる。ＣＡＮバスは、マイクロコントローラ及び装置がホストコンピューターのない使用において互いに通信することを許可するような車両バス標準として設計される。それはメッセージに基づくプロトコルであり、最初に自動車内における複数の電線のために設計されたが、数多くのその他の環境（状況）にも用いられる。
【００２０】
現在、図２を参照して、一実施形態において、センサシステム１１５は、１つ以上のカメラ２１１と、全地球測位システム（ＧＰＳ）ユニット２１２と、慣性計測ユニット（ＩＭＵ）２１３と、レーダーユニット２１４と、ＬＩＤＡＲ（光検出及び測距）ユニット２１５とを含むが、これらに制限されない。ＧＰＳシステム２１２は、送受信機を含んでもよく、前記送受信機は、自律走行車の位置に関する情報を提供するように動作することができる。ＩＭＵユニット２１３は、慣性加速度に基づいて自律走行車の位置及び方向変化を感知することができる。レーダーユニット２１４は、無線信号を利用して自律走行車のローカル環境内の対象を感知するシステムを示すことができる。いくつかの実施形態において、対象を感知する以外、レーダーユニット２１４は、さらに対象の速度及び／又は進行方向を感知することができる。ＬＩＤＡＲユニット２１５はレーザを使用して自律走行車の所在する環境における対象を感知することができる。その他のシステム構成要素以外、ＬＩＤＡＲユニット２１５は１つ以上のレーザ光源、レーザースキャナ及び１つ以上の検出器をさらに含んでもよい。カメラ２１１は、自律走行車の周辺環境の画像をキャプチャするための１つ以上の装置を含んでもよい。カメラ２１１は、スチルカメラ及び／又はビデオカメラであってもよい。カメラは、例えば回転及び／又は傾斜のプラットフォームに取り付けられる、機械的に移動可能なものであってもよい。
【００２１】
センサシステム１１５は、その他のセンサ、例えばソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ（例えばマイクロフォン）をさらに含んでもよい。オーディオセンサは、自律走行車周辺の環境から音をキャプチャするように配置されてもよい。ステアリングセンサは、ハンドル、車両の車輪又はその組み合わせのステアリング角を感知するように配置できる。スロットルセンサ及びブレーキセンサは、それぞれ車両のスロットル位置及びブレーキ位置を感知する。いくつかの場合、スロットルセンサ及びブレーキセンサは、集積型スロットル／ブレーキセンサに一体化されてもよい。
【００２２】
一実施形態において、車両制御システム１１１は、ステアリングユニット２０１と、スロットルユニット２０２（加速ユニットとも呼ばれる）と、ブレーキユニット２０３とを含むが、これらに制限されない。ステアリングユニット２０１は、車両の方向又は進行方向を調整することに用いられる。スロットルユニット２０２は、モーター又はエンジンの速度を制御して、続いて車両の速度及び加速度を制御することに用いられる。ブレーキユニット２０３は、摩擦を提供することによって車両の車輪又はタイヤをスローダウンして車両を減速させることに用いられる。注意すべきなのは、図２に示すような構成要素はハードウェア、ソフトウェア又はその組み合わせで実現されることができる。
【００２３】
図１を再び参照して、無線通信システム１１２は、自律走行車１０１と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを可能にする。例えば、無線通信システム１１２は、１つ以上の装置に直接に又は通信ネットワークを介して無線通信し、例えばネットワーク１０２によってサーバ１０３〜１０４に通信できる。無線通信システム１１２は、任意のセルラー通信ネットワーク又は無線ローカルエリアネットワーク（ＷＬＡＮ）（例えばＷｉＦｉ）を使用して他の構成要素やシステムに通信することができる。無線通信システム１１２は、例えば赤外線リンク、ブルートゥース等を使用して装置（例えば、乗客の移動装置、表示装置、車両１０１内のスピーカー）に直接に通信できる。ユーザインターフェースシステム１１３は、車両１０１内で実行される周辺装置の一部であってもよく、例えばキーボード、タッチスクリーンディスプレイ装置、マイクロフォン、及びスピーカー等を含む。
【００２４】
自律走行車１０１の一部又は全ての機能は、特に自律運転モードで操作する場合、感知及び計画システム１１０により制御したり管理したりすることができる。感知及び計画システム１１０は、必要なハードウェア（例えば、プロセッサ、メモリ、メモリ）、及びソフトウェア（例えば、オペレーティングシステム、計画及びルーティングプログラム）を含み、センサシステム１１５、車両制御システム１１１、無線通信システム１１２、及び／又はユーザインターフェースシステム１１３から情報を受信し、受信された情報を処理し、出発地から目的地までのルートや経路を計画し、そして計画及び制御情報に基づいて車両１０１を運転させる。あるいは、感知及び計画システム１１０と車両制御システム１１１とは一体化されてもよい。
【００２５】
例えば、乗客のユーザとして、例えばユーザインターフェースによって旅程の出発位置及び目的位置を指定することができる。感知及び計画システム１１０は旅程関連データを取得する。例えば、感知及び計画システム１１０は、ＭＰＯＩサーバから位置及びルート情報を取得することができ、前記ＭＰＯＩサーバはサーバ１０３〜１０４の一部であってもよい。位置サーバは、位置サービスを提供し、かつＭＰＯＩサーバはマップサービス及びある位置のＰＯＩを提供する。あるいは、このような位置及びＭＰＯＩ情報は、感知及び計画システム１１０の永続的記憶装置にローカルでキャッシュされることができる。
【００２６】
自律走行車１０１がルートに沿って移動する時に、感知及び計画システム１１０は、さらに交通情報システムやサーバ（ＴＩＳ）からリアルタイム交通情報を取得することができる。注意すべきなのは、サーバ１０３〜１０４は、第三者エンティティにより動作されることができる。あるいは、サーバ１０３〜１０４の機能は、感知及び計画システム１１０と一体化されてもよい。リアルタイム交通情報、ＭＰＯＩ情報、位置情報、及びセンサシステム１１５が検出又は感知したリアルタイムなローカル環境データ（例えば、障害物、対象、付近車両）に基づいて、感知及び計画システム１１０は、安全で効果的に指定した目的地に到達するように、最適なルートを計画し、かつ計画したルートにより例えば車両制御システム１１１を介して車両１０１を運転することができる。
【００２７】
一実施形態によれば、３つのトルク力からなるトルク力（ＴＦ）モデルから、自律走行車（ＡＤＶ）のスロットル制御又はブレーキ制御トルク力を決定することができる。システムは、自律走行車を加速させるための第１トルク力、一定速度を維持する第２トルク力、及び車両の目標速度と実際速度との間の速度差を最小化させる第３トルク力を計算する。システムは、第１、第２及び第３トルク力に基づいてスロットル−ブレーキトルク力を決定する。システムはスロットル−ブレーキトルク力に基づいて自律走行車の次の速度を制御する。
【００２８】
一実施形態では、第１参照時間にＡＤＶの第１目標速度を決定し、第２参照時間に第２目標速度を決定し、実際速度がスロットル制御コマンドを実行した時間からの機械コマンド遅延を有することを配慮して第１目標速度と第２目標速度に基づいて加速度トルク力を計算する方式で、第１トルク力を計算する。別の実施形態では、コマンド遅延は加速度（例えば、スロットル制御）と減速度（例えば、ブレーキ制御）によって異なる。別の実施形態では、第１目標速度と第２目標速度との間の差を第１参照時間と第２参照時間の間の差で割ることで加速度トルク力を計算する。
【００２９】
一実施形態では、ＡＤＶの現在の速度を決定し、ＡＤＶに作用する摩擦力を決定し、ＡＤＶに作用する風の抵抗を決定し、ＡＤＶの現在の速度、決定した摩擦力及び風の抵抗に基づいて一定速度の維持に必要なトルク力を計算する方式で、第２トルク力を計算する。
【００３０】
一実施形態では、ＡＤＶの現在の速度の二次（a second order of the current speed）に基づいてＡＤＶに作用する風の抵抗を決定する。ＡＤＶの現在の速度の一次（a first order of the current speed）に基づいてＡＤＶに作用する摩擦力を決定する。
【００３１】
一実施形態では、システムは、ＡＤＶの目標速度を決定し、ＡＤＶの実際速度を決定し、比例−積分−微分（ＰＩＤ）コントローラでＡＤＶに用いられるトルク力を計算して、目標速度と実際速度との間の差を最小化させる方式で、第３トルク力を計算する。別の実施形態では、第１、第２及び第３トルク力を加算することでスロットル−ブレーキトルク力を計算する。
【００３２】
一実施形態では、それぞれＡＤＶの現在の速度の一次と二次に比例した係数によって摩擦力と風の抵抗をモデリングする。ＰＩＤコントローラは、比例、積分及び微分係数でモデリングされてもよい。これらの係数はデータ分析システム（例えば、データ分析システム又はサーバ１０３）が大量の運転統計データに基づいてオフラインで設定されてもよい。
【００３３】
一実施形態では、データ分析システム１０３はデータコレクタ１２１と機器学習エンジン１２２を備える。データコレクタ１２１は各種の車両から運転統計データ１２３を収集する。運転統計データ１２３は、ＡＤＶの目標速度と実際速度に関連する情報、参照時間のＧＰＳ位置、ＡＤＶのブランド／モデル、車両ＩＤ番号、計画ルート及び運転環境のセンサ出力（例えば天气と道路状況）を含んでもよい。機器学習エンジン１２２は、運転統計データ１２３を分析することで、ＴＦモデル１２４に適した係数を学習して決定し、摩擦力、風の抵抗及び安定したＰＩＤコントローラ応答を示す。次に、ＴＦモデル１２４は、それから自律走行車１０１の感知・計画システム１１０にアップロードされて、速度制御の決定に用いられてもよい。
【００３４】
図３は、本発明の一実施形態に係る自律走行車と共に使用される感知及び計画システムの実例を示すブロック図である。システム３００は、図１の自律走行車１０１の一部（感知及び計画システム１１０、制御システム１１１及びセンサシステム１１５を含むが、これらに制限されない）となるように実現されることができる。図３を参照し、感知及び計画システム１１０は、位置決めモジュール３０１と、感知モジュール３０２と、決定モジュール３０３と、計画モジュール３０４と、制御モジュール３０５とを含むが、これらに制限されない。
【００３５】
モジュール３０１〜３０５における一部又は全部は、ソフトウェア、ハードウェア又はその組み合わせで実現されてもよい。例えば、これらのモジュールは、永続的記憶装置３５２に取り付けられ、メモリ３５１にロードされ、かつ１つ以上のプロセッサ（図示せず）により実行されてもよい。注意すべきなのは、これらのモジュールにおける一部又は全部は、図２の車両制御システム１１１の一部又は全部のモジュールに通信可能に接続されてもよく、一体化されてもよい。モジュール３０１〜３０５における一部は、一緒に集積モジュールとして一体化されてもよい。
【００３６】
位置決めモジュール３０１（地図及びルーティングモジュールとも言われる）は、ユーザの旅程又はルートに関連する任意のデータを管理する。ユーザは、例えばユーザインターフェースを介してログインするとともに旅程の出発位置及び目的位置を指定してもよい。位置決めモジュール３０１は、旅程に関連するデータを取得するように、自律走行車３００（システム）のその他の構成要素（例えば地図及びルート情報３１１）と通信する。例えば、位置決めモジュール３０１は、位置サーバと、地図及びＰＯＩ（ＭＰＯＩ）サーバから位置及びルート情報を取得することができる。位置サーバは、位置サービスを提供し、かつＭＰＯＩサーバは、地図及びルート情報３１１の一部としてキャッシュされてもよい地図サービスと特定な位置のＰＯＩとを提供する。システム３００がルートに沿って移動する時に、位置決めモジュール３０１は、さらに交通情報システムやサーバからリアルタイム交通情報を取得することができる。
【００３７】
センサシステム１１５により提供されたセンサデータ、及び位置決めモジュール３０１により得られた位置決め情報に基づいて、感知モジュール３０２は周辺環境に対する感知を決定する。感知情報は、普通の運転者が自分で運転している車両周辺から感知したもの（状況）を示すことができる。感知情報は、例えば対象形式で現される車線配置（例えば、ストレート又はカーブ）、トラフィック信号、他の車両の相対位置、歩行者、建築物、横断歩道又はその他の交通関連標識（例えば、停止標識、譲り標識）などを含んでもよい。
【００３８】
感知モジュール３０２は、コンピュータビジョンシステム又はコンピュータビジョンシステムの機能を含んでもよく、自律走行車環境における対象及び／又は特徴を認識するように、１つ以上のカメラによりキャプチャされた画像を処理及び分析することに用いられる。前記対象は交通信号、車道の境界線、他の車両、歩行者及び／又は障害物等を含んでもよい。コンピュータビジョンシステムは、対象認識アルゴリズム、ビデオトラッキング及びその他のコンピュータビジョン技術を使用することができる。いくつかの実施形態において、コンピュータビジョンシステムは、環境をマッピングし、対象を追跡し、かつ対象の速度を推定することなどができる。感知モジュール３０２は、その他のセンサ（例えばレーダー及び／又はＬＩＤＡＲ）により提供されたその他のセンサデータに基づいて対象を検出することもできる。
【００３９】
それぞれの対象に対して、決定モジュール３０３は、如何に対象を処理する決定をする。例えば、特定な対象（例えば、交差ルートにおける他の車両）及び対象を記述するメタデータ（例えば、速度、方向、ステアリング角）に対して、決定モジュール３０３は、遇う対象に如何に対応する（例えば、追い越し、道譲り、停止、通過）ことを決定する。決定モジュール３０３は、永続記憶装置３５２（図示せず）に記憶されてもよい１セットのルール（例えば交通ルール）に基づいてこのような決定をすることができる。
【００４０】
感知したそれぞれ対象に対する決定に基づいて、計画モジュール３０４は、自律走行車のためにルート又は経路及び運転パラメータ（例えば、距離、速度及び／又はステアリング角）を計画する。すなわち、所定対象に対して、決定モジュール３０３は前記対象に対して如何に対応するかを決定し、計画モジュール３０４は如何に実行するかを決定する。例えば、所定対象に対して、決定モジュール３０３は、前記対象を追い越すことを決定することができ、計画モジュール３０４は、前記対象の左側に追い越すか、右側に追い越すかを決定することができる。計画モジュール３０４は、計画及び制御データを生成し、車両３００が次の移動周期（例えば、次のルート／経路セグメント）に如何に移動するかを記述する情報を含む。例えば、計画及び制御データは車両３００が毎時間３０マイル（ｍｐｈ）の速度で１０メートル移動し、次に２５ｍｐｈの速度で右車線まで変わることを指示することができる。
【００４１】
計画及び制御データに基づいて、制御モジュール３０５は計画及び制御データにより定義されたルート又は経路に基づいて、車両制御システム１１１へ適切な命令又は信号を送信することによって自律走行車を制御及び運転する。前記ルート又は経路に沿って違う場所で適時に適切な車両設置又は運転パラメータ（例えば、スロットル、ブレーキ及びステアリング命令）を使用して車両を第１点から第２点まで運転するように、計画及び制御データは十分な情報を含む。
【００４２】
注意すべきなのは、決定モジュール３０３及び計画モジュール３０４は、集積モジュールに一体化されてもよい。決定モジュール３０３／計画モジュール３０４は、自律走行車の運転経路を決定するために、ナビゲーションシステム又はナビゲーションシステムの機能を含んでもよい。例えば、ナビゲーションシステムは、自律走行車が以下の経路に沿って移動することを実現するための一連の速度及びディレクショナ進行方向を決定することができ、前記経路は、自律走行車を総体的に最終目的位置を向けて通じる車線経路に進ませると同時に、基本的に感知された障害物を避けることができる。目的地はユーザインターフェースシステム１１３により実現されたユーザ入力に基づいて設置できる。ナビゲーションシステムは、自律走行車が走行していると同時に走行経路を動的に更新することができる。ナビゲーションシステムは、自律走行車用の走行経路を決定するように、ＧＰＳシステム及び１つ以上の地図からのデータを合併することができる。
【００４３】
決定モジュール３０３／計画モジュール３０４は、自律走行車環境における潜在障害物を、認識・評価・回避又はその他の方式で迂回するために、衝突回避システム又は衝突回避システムの機能をさらに含んでもよい。例えば、衝突回避システムは、以下の方式によって自律走行車のナビゲーションにおける変更を実現することができ、制御システム１１１の中の１つ以上のサブシステムを動作してターン操縦、ステアリング操縦、ブレーキ操縦等を採る。衝突回避システムは、周辺の交通モード、道路状況等に基づいて障害物を回避可能な操縦を自動的に決定することができる。衝突回避システムは、その他のセンサシステムは、自律走行車がターンして入ろうとする隣接領域における車両、建築障害物等を検出する際にターン操縦を採らないように配置できる。衝突回避システムは、使用可能でありかつ自律走行車の乗員の安全性を最大化させる操縦を自動的に選択することができる。衝突回避システムは、自律走行車の乗員室内で最小の加速度を出現させることが予測された回避操縦を選択することができる。
【００４４】
図４は一実施形態に係る制御モジュール３０５を示す。制御モジュール３０５は、加速度ＴＦサブモジュール４０５、維持速度ＴＦサブモジュール４１０及び速度差ＴＦサブモジュール４１５を備える。これらのモジュールは、それぞれ自律走行車を加速させるための第１トルク力（ＴＦａｃｃ）、一定速度ｎを維持する第２トルク力（ＴＦｍ）及び車両の目標速度と実際速度との間の速度差を最小化させる第３トルク力（ＴＦｄｉｆｆ）を計算することに用いられる。この３つのモジュールの入力のいずれも目標車両速度４０１の入力を含む。出力は制御システム１１１により送信されたスロットル−ブレーキコマンドと最終的な実際車両速度４２０である。実際車両速度４２０を例えば、速度差ＴＦサブモジュール４１５（例えば、次のコマンド周期）の第２入力として制御モジュール３０５にフィードバックされる。
【００４５】
加速度ＴＦサブモジュール４０５はＡＤＶの現在の速度に増加、又は現在の速度まで減少するために必要な加速度トルク力を計算する。図５は一実施形態に係る加速度トルク力を示すＴＦモデル３１２の速度-距離（speed versus distance）グラフである。図５に示すように、グラフは目標速度５０１、実際速度５０５及びＡＤＶの偏差又は速度差５１０を示す。コマンド遅延を配慮し、目標速度５０１における２つの点に基づいて加速度トルク力を計算する。例えば、スロットル制御コマンドを用いると決定する場合、加速度ＴＦサブモジュール４０５は、スロットル制御のコマンド遅延、スロットルコマンド遅延を配慮した第１目標速度（すなわち、コマンド遅延後の第１目標速度がどのぐらいになるか）及びスロットルコマンド遅延を配慮した第２目標速度（すなわち、コマンド遅延後の第２（又は次の）目標速度がどのぐらいになるか）を決定する。加速度ＴＦサブモジュール４０５は、時間に対するコマンド遅延を配慮した目標速度の導関数を取ることでＡＤＶ加速に必要なトルク又は回転力を計算する。導関数は、以下のように、第１時間と第２時間の変数でそれぞれ割る第１と第２目標速度の変数又は変更に基づいて計算することができ、
例えば、
【数１】
2019501809.tif 000035
式中、ｋは速度、ｔは時間を示す。ＡＤＶが一定の質量と車輪半径を有する場合は、スロットルコマンド遅延を配慮し、トルク又は回転力（ＴＦ）は加速度に比例し、例えば、ＴＦａｃｃを示すＴＦモデル３１２は、
【数２】
2019501809.tif 000036
であってもよい。
【００４６】
スロットルコマンドの数学モデルに基づいて、トルク又は回転力をスロットルコマンドに変換する。一実施形態によれば、スロットルコマンドの実例としては、
【数３】
2019501809.tif 000037
であってもよい。
【００４７】
一実施形態では、ａは約８．５、ｂは約−０．６３、ｃは推定したスロットル制御コマンド遅延である。一実施形態では、コマンド遅延が１秒のスロットル制御に対して、ｃは約１．０である。
【００４８】
別の実例では、ブレーキ制御を用いると決定する場合、加速度ＴＦサブモジュール４０５はブレーキ制御のコマンド遅延、ブレーキコマンド遅延を配慮した第１目標速度、ブレーキコマンド遅延を配慮した第２目標速度（又はブレーキ制御を用いた後の次の目標速度）を決定し、ＡＤＶから速度を減算することに必要なトルク又は回転力を決定する。ブレーキコマンドの数学モデルに基づいて、トルク又は回転力をブレーキコマンドに変換する。一実施形態によれば、ブレーキ制御コマンドの一例としては、  
【数４】
2019501809.tif 000038
であってもよい。
【００４９】
一実施形態では、ａは約４０．０、ｂは約−０．１、ｃは推定したブレーキ制御コマンド遅延である。一実施形態では、コマンド遅延が０．２秒のブレーキ制御に対して、ｃは約０．２である。
【００５０】
図５（速度差５１０が約２メートル／秒で変化する）に示すように、加速度トルク力を示すＴＦモデル３１２は加速度と減速度を処理するが、ＡＤＶ速度は風の抵抗と摩擦力のため徐々に減少する。加速度トルク力と維持速度トルク力を示すＴＦモデル３１２は徐々に減速することを防止する。維持速度トルク力は運転者が定期的にスロットル制御を用いることに対応し、車両の安定速度を維持する。
【００５１】
図６は一実施形態に係る、加速度トルク力と維持速度トルク力を含むＴＦモデル３１２の速度-距離グラフである。加速度トルク力は上記した加速度ＴＦサブモジュール４０５で計算される。維持速度ＴＦサブモジュール４１０は、ＡＤＶの安定速度の維持に必要なトルク又は回転力を計算して、例えば、風の抵抗と摩擦力（例えば、内部機械摩擦）に抵抗する。図６はＡＤＶの目標速度６０１、実際速度６０５及び目標速度６０１と実際速度６０５の間の偏差又は速度差６１０を示す。図に示すように、速度差６１０は１メートル／秒より小さいマージンで変化する。
【００５２】
一実施形態では、自律走行車の現在の速度、ＡＤＶに作用する摩擦力及びＡＤＶに作用する風の抵抗を決定することによって、ＡＤＶの安定速度の維持に必要なトルク又は回転力を計算してもよい。自律走行車１０１の感知・計画システム１１０の制御モジュール３０５は最近収集したデータに基づいて摩擦力と風の抵抗を計算してもよい。例えば、数式
【数５】
2019501809.tif 000039
（ｋはＡＤＶの現在の速度であり、
【数６】
2019501809.tif 000040
は風の抵抗の定数を示し、
【数７】
2019501809.tif 000041
と
【数８】
2019501809.tif 000042
はＡＤＶに作用する摩擦力の定数を示す）を有するＴＦモデル３１２に基づいて、摩擦力と風の抵抗を計算してもよい。
【数９】
2019501809.tif 000043
、
【数１０】
2019501809.tif 000044
及び
【数１１】
2019501809.tif 000045
はあらかじめデータ分析システム１０３でオフラインで計算されてもよい。一実施形態では、
【数１２】
2019501809.tif 000046
、
【数１３】
2019501809.tif 000047
及び
【数１４】
2019501809.tif 000048
は類似した車両ブランド／モデルにおいて共有されている。別の実施形態では、
【数１５】
2019501809.tif 000049
、
【数１６】
2019501809.tif 000050
及び
【数１７】
2019501809.tif 000051
は特定車両又は特定タイプの車両に固有のものであってもよい。
【００５３】
図７Ａは一実施形態に係る、３メートル／秒の初期速度偏差と伴う状況で加速度トルク力と維持トルク力を含むＴＦモデル３１２の速度-距離グラフである。図７Ａに示されるこの例示では、ＴＦａｃｃとＴＦｍに基づいて総ＴＦを計算する。図に示すように、初期速度偏差は走行過程にわたって速度差７０４に存在する。加速度トルク力と維持速度トルク力を示すＴＦモデル３１２は加速度と減速度を処理し、徐々に減速することを防止するが、実際速度と目標速度との間の初期速度偏差（速度差／初期誤差）を処理していない。初期誤差減少トルク力（initial error reduction torque force）を有するＴＦモデル３１２（例えば、閉ループ制御）は当該初期速度偏差を最小化させる。
【００５４】
図７Ｂは一実施形態に係る、５メートル／秒の初期速度偏差と伴う状況で加速度トルク力、維持トルク力及び初期誤差減少トルク力を含むＴＦモデル３１２の速度-距離グラフである。加速度トルク力と維持速度トルク力は、それぞれ上記した加速度ＴＦサブモジュール４０５と維持速度ＴＦサブモジュール４１０で計算される。誤差減少ＴＦサブモジュール４１０は速度と外部干渉の任意の初期偏差の補正に必要なトルク力を計算する。図７Ｂは、ＡＤＶの目標速度７０１、実際速度７０５及び目標速度と実際速度との間の速度偏差又は速度差７１０を示す。図に示すように、ＡＤＶは約５メートル／秒の初期速度偏差７１０を有する。ＡＤＶが約３０メートル走行した後に、ＡＤＶの実際速度７０５は、最終的に約１メートル／秒より小さいマージンで目標速度７０１を追従する。
【００５５】
一実施形態では、比例−積分−微分（ＰＩＤ）コントローラで誤差を計算してトルク力を減少させてもよい。ＰＩＤコントローラは工業制御システムで一般的に使用される制御ループフィードバックメカニズムである。ＰＩＤコントローラは、それぞれＰ、Ｉ及びＤに示される比例項、積分項及び微分項に基基づいて、目標値と実際値との間の差とする誤差値を連続的に計算して補正を用いる。例えば、ＴＦモデル３１２は、初期誤差減少トルク力用の数式として、
【数１８】
2019501809.tif 000052
（式中、
【数１９】
2019501809.tif 000053
は減少しようとする目標と実際速度との間の初期誤差
又は差、Ｋｐ、Ｋｉ及びＫｄはＰＩＤコントローラの比例、積分及び微分の定数である。）を含んでもよい。最初、ＰＩＤコントローラの定数Ｋｐ、Ｋｉ及びＫｄを訓練したり調整したりしなければならない。一実施形態では、ＰＩＤ定数は、機器学習エンジン１２２でデータ分析システム１０３における大量の運転統計データ１２３に基づいてオフラインで調整されてもよい。別の実施形態では、ＡＤＶの操作期間に、感知・計画システム１１０の制御モジュール３０５はＰＩＤ定数を調整してもよい。一実施形態では、ＰＩＤコントローラはシミュレートハードウェア装置で実施されてもよい。別の実施形態では、ＰＩＤコントローラはソフトウェアプログラムで実施されてもよい。
【００５６】
図８は一実施形態に係るスロットル−ブレーキトルク力の計算手順を示すフローチャートである。手順８００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含んでもよい処理ロジックで実行されてもよい。例えば、手順８００は自律走行車の制御モジュール（例えば、感知・計画システム１１０の制御モジュール３０５）で実行されてもよい。図８に示すように、ブロック８０１において、処理ロジックは自律走行車（ＡＤＶ）を加速させるための第１トルク力を計算する。ブロック８０２において、処理ロジックはＡＤＶの一定の車両速度を維持するための第２トルク力を計算する。ブロック８０３において、処理ロジックはＡＤＶの実際速度と目標速度との間の差を最小化させるための第３トルク力を計算する。ブロック８０４において、処理ロジックは第１、第２及び第３トルク力に基づいてスロットル−ブレーキトルク力を決定する。ブロック８０５において、感知・計画システム１１０の制御モジュール３０５はスロットル−ブレーキトルク力に基づいてＡＤＶの次の速度を制御する。
【００５７】
図９は一実施形態に係るブロック８０１における第１トルク力の計算手順を示すフローチャートである。手順９００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含んでもよい処理ロジックで実行されてもよい。例えば、手順９００は、自律走行車の制御モジュール（例えば、感知・計画システム１１０の制御モジュール３０５）で実行されてもよい。図９に示すように、ブロック９０１において、処理ロジックは自律走行車の目標速度を示す第１速度を決定して、第１参照時間に自律走行車を操縦する。ブロック９０２において、処理ロジックは自律走行車の目標速度を示す第２速度を決定して、第２参照時間に自律走行車を操縦する。ブロック９０３において、コマンド遅延を配慮し、処理ロジックは第１速度と第２速度に基づいて加速度トルク力を計算する。
【００５８】
図１０は一実施形態に係るブロック８０２における第２トルク力の計算過程を示すフローチャートである。過程１０００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含んでもよい処理ロジックで実行されてもよい。例えば、過程１０００は、自律走行車の制御モジュール（例えば、感知・計画システム１１０の制御モジュール３０５）で実行されてもよい。図１０に示すように、ブロック１００１において、処理ロジックは自律走行車の現在の速度を決定する。ブロック１００２において、処理ロジックは自律走行車に作用する摩擦力を決定する。ブロック１００３において、処理ロジックは自律走行車に作用する風の抵抗を決定する。ブロック１００４において、処理ロジックは現在の速度、摩擦力及び風の抵抗に基づいて自律走行車の現在の速度の維持に必要なトルク力を計算する。
【００５９】
図１１は一実施形態に係るブロック８０３における第３トルク力の計算手順を示すフローチャートである。手順１１００は、ソフトウェア、ハードウェア又はそれらの組み合わせを含んでもよい処理ロジックで実行されてもよい。例えば、手順１１００は自律走行車の制御モジュール（例えば、感知・計画システム１１０の制御モジュール３０５）で実行されてもよい。図１１に示すように、ブロック１１０１において、処理ロジックは自律走行車の目標速度を計算する。ブロック１１０２において、処理ロジックは自律走行車の実際速度を決定する。ブロック１１０３において、処理ロジックは目標速度と実際速度との間の差を最小化させるトルク力を比例−積分−微分（ＰＩＤ）コントローラで計算する。
【００６０】
注意すべきなのは、前記の示されたとともに記述された一部又は全部の構成要素は、ソフトウェア、ハードウェア又はその組み合わせで実現されることができる。例えば、このような構成要素は、永続記憶装置にインストールされるとともに記憶されたソフトウェアとして実現されてもよく、前記ソフトウェアは、本出願にわたって記載の手順又は動作を実施するように、プロセッサ（図示せず）でメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路（例えば特定用途向けＩＣ又はＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ））にプログラミングされ又は嵌め込みされた専用ハードウェアにおける実行可能なコードとして実現されてもよく、前記実行可能なコードは、アプリケーションからの対応するドライバープログラム及び／又はオペレーティングシステムによってアクセスされてもよい。なお、このような構成要素は、プロセッサ又はプロセッサコアにおける特定のハードウェアロジックとして実現されてもよく、ソフトウェア構成要素が１つ以上の特定命令によってアクセス可能な命令セットの一部とする。
【００６１】
図１２は、本出願の一実施形態と組み合わせて使用されるデータ処理システムを例示的に示すブロック図である。例えば、システム１５００は、上記手順又は方法のいずれか（例えば、感知及び計画システム１１０、及び図１のサーバ１０３〜１０４のいずれか）を実行する上記任意のデータ処理システムを示してもよい。システム１５００は、多数の異なる構成要素を含んでもよい。これらの構成要素は、集積回路（ＩＣ）、集積回路の一部、分散型電子装置又は回路基板に適用された他のモジュール（例えばコンピュータシステムのマザーボード又はアドインカード）、又は他の方式でコンピュータシステムのシャシーに組み込まれた構成要素として実現されることができる。
【００６２】
さらに、システム１５００は、コンピュータシステムの多数の構成要素の高レベルビューを示すことを目的とする。しかしながら、いくつかの実現形態では、付加的構成要素が存在する場合があることを理解すべきである。また、他の実現形態において示される構成要素が異なる配置を有してもよい。システム１５００は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレーヤー、パーソナルディジタルアシスタント（ＰＤＡ）、スマート腕時計、パーソナルコミュニケーター、ゲーム装置、ネットワークルータ又はハブ、無線アクセスポイント（ＡＰ）又はリピーター、セットトップボックス、又はそれらの組合せを示してもよい。また、単一の機器又はシステムのみを示したが、用語「機器」又は「システム」は、さらに、独立又は共同で１つ（又は複数）の命令セットを実行することにより本明細書に説明される任意の１種又は複数種の方法を実行する機器又はシステムの任意のセットを含むことを理解すべきである。
【００６３】
一実施形態において、システム１５００は、バス又は相互接続部材１５１０によって接続されたプロセッサ１５０１、メモリ１５０３及び装置１５０５〜１５０８を備える。プロセッサ１５０１は、単一のプロセッサコア又は複数のプロセッサコアを含む単一のプロセッサ又は複数のプロセッサであってもよい。プロセッサ１５０１は、マイクロプロセッサ、中央処理装置（ＣＰＵ）等のような１つ又は複数の汎用プロセッサであってもよい。より具体的には、プロセッサ１５０１は、複雑命令セット計算（ＣＩＳＣ）マイクロプロセッサ、縮小命令セットコンピュータ（ＲＩＳＣ）マイクロプロセッサ、超長命令語（ＶＬＩＷ）マイクロプロセッサ、又は他の命令セットを実現するプロセッサ、又は命令セットの組合せを実現するプロセッサであってもよい。プロセッサ１５０１は、さらに、専用集積回路（ＡＳＩＣ）、セルラ又はベースバンドプロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタル信号プロセッサ（ＤＳＰ）、ネットワークプロセッサ、グラフィックプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような１つ又は複数の専用プロセッサ、あるいは命令処理可能な任意の他のタイプのロジックであってもよい。
【００６４】
プロセッサ１５０１（超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよい）は、前記システムの各種構成要素と通信するための主処理ユニット及び中央ハブとして用いられてもよい。このようなプロセッサは、システムオンチップ（ＳｏＣ）として実現されることができる。プロセッサ１５０１は、命令を実行することにより本明細書に説明される動作及びステップを実行するための命令を実行するように構成される。また、システム１５００は、選択可能なグラフィックサブシステム１５０４と通信するグラフィックインターフェースをさらに含み、グラフィックサブシステム１５０４は、表示コントローラ、グラフィックプロセッサ及び／又は表示装置をさらに備えてもよい。
【００６５】
プロセッサ１５０１は、メモリ１５０３と通信してもよく、メモリ１５０３は、一実施形態において複数のメモリによって所定量のシステムメモリを提供する。メモリ１５０３は、ランダムアクセスメモリ（ＲＡＭ）、動的ＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、静的ＲＡＭ（ＳＲＡＭ）又は他のタイプのメモリのような１つ又は複数の揮発性記憶装置（又はメモリ）を備えてもよい。メモリ１５０３は、プロセッサ１５０１又は任意の他の装置により実行される命令列を含む情報を記憶できる。例えば、複数種のオペレーティングシステム、装置ドライバー、ファームウェア（例えば、基本入出力システム又はＢＩＯＳ）及び／又はアプリケーションの実行可能なコード及び／又はデータはメモリ１５０３にロードされてもよく、プロセッサ１５０１により実行される。オペレーティングシステムは、ロボットオペレーティングシステム（ＲＯＳ）、Ｍｉｃｒｏｓｏｆｔ（登録商標）会社からのＷｉｎｄｏｗｓ（登録商標）オペレーティングシステム、アップル会社からのＭａｃ  ＯＳ（登録商標）／ｉＯＳ（登録商標）、Ｇｏｏｇｌｅ（登録商標）会社からのＡｎｄｒｏｉｄ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ｕｎｉｘ又は他のリアルタイム又は組み込みオペレーティングシステムのような任意のタイプのオペレーティングシステムであってもよい。
【００６６】
システム１５００は、ＩＯ装置、例えば装置１５０５〜１５０８をさらに備えてもよく、ネットワークインターフェース装置１５０５、選択可能な入力装置１５０６及び他の選択可能なＩＯ装置１５０７を備える。ネットワークインターフェース装置１５０５は、無線送受信機及び／又はネットワークインターフェースカード（ＮＩＣ）を備えてもよい。前記無線送受信機は、ＷｉＦｉ送受信機、赤外送受信機、ブルートゥース送受信機、ＷｉＭａｘ送受信機、無線セルラーホン送受信機、衛星送受信機（例えば、全地球測位システム（ＧＰＳ）送受信機）又は他の無線周波数（ＲＦ）送受信機又はそれらの組合せであってもよい。ＮＩＣはイーサネットカードであってもよい。
【００６７】
入力装置１５０６は、マウス、タッチパッド、タッチスクリーン（それは表示装置１５０４と一体化されてもよい）、ポインタデバイス（例えばスタイラス）及び／又はキーボード（例えば、物理キーボード又はタッチスクリーンの一部として表示された仮想キーボード）を備えてもよい。例えば、入力装置１５０６は、タッチスクリーンに接続されるタッチスクリーンコントローラを含んでもよい。タッチスクリーン及びタッチスクリーンコントローラは、例えば複数種のタッチ感度技術（容量、抵抗、赤外及び表面音波の技術を含むが、それらに限定されない）のいずれか、及びタッチスクリーンの１つ又は複数の接触点を決定するための他の近接センサアレイ又は他の素子を用いてそのタッチ点及び移動又は断続を検出することができる。
【００６８】
ＩＯ装置１５０７は音声装置を備えてもよい。音声装置は、スピーカ及び／又はマイクロホンを含んでもよく、それにより音声認識、音声コピー、デジタル記録及び／又は電話機能のような音声サポートの機能を促進する。他のＩＯ装置１５０７は、汎用シリアルバス（ＵＳＢ）ポート、パラレルポート、シリアルポート、印刷機、ネットワークインターフェース、バスブリッジ（例えば、ＰＣＩ−ＰＣＩブリッジ）、センサ（例えば、加速度計、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサ等のような動きセンサ）又はそれらの組合せをさらに備えてもよい。装置１５０７は、結像処理サブシステム（例えば、カメラ）をさらに備えてもよく、前記結像処理サブシステムは、カメラ機能（例えば、写真及びビデオ断片の記録）を促進するための電荷カップリング装置（ＣＣＤ）又は相補型金属酸化物半導体（ＣＭＯＳ）光学センサのような光学センサを備えてもよい。あるセンサは、センサハブ（図示せず）によって相互接続部材１５１０に接続されてもよく、キーボード又は熱センサのような他の装置は、組み込みコントローラ（図示せず）により制御されてもよく、これはシステム１５００の特定配置又は設計により決められる。
【００６９】
データ、アプリケーション、１つ又は複数のオペレーティングシステム等のような情報の永続記憶を提供するために、大容量メモリ（図示せず）は、プロセッサ１５０１に接続されてもよい。様々な実施形態において、薄型化と軽量化のシステム設計を実現しかつシステムの応答能力を向上させるために、このような大容量メモリは、ソリッドステート装置（ＳＳＤ）によって実現されることができる。なお、他の実施形態において、大容量メモリは、主にハードディスクドライブ（ＨＤＤ）で実現されてもよく、少量のＳＳＤ記憶量は、ＳＳＤキャッシュとして停電イベント期間にコンテキスト状態及び他のこのような情報の不揮発性記憶を実現し、それによりシステム動作が再開する時に通電を速く実現することができる。さらに、フラッシュデバイスは、例えばシリアルペリフェラルインターフェース（ＳＰＩ）によってプロセッサ１５０１に接続されてもよい。このようなフラッシュデバイスは、システムソフトウェアの不揮発性記憶に用いられてもよく、前記システムソフトウェアは、前記システムのＢＩＯＳ及び他のファームウェアを備える。
【００７０】
記憶装置１５０８は、任意の１種又は複数種の本明細書に記載の方法又は機能を体現する１つ又は複数の命令セット又はソフトウェア（例えば、モジュール、ユニット及び／又はロジック１５２８）が記憶されるコンピュータアクセス可能な記憶媒体１５０９（機械可読記憶媒体又はコンピュータ可読媒体とも呼ばれる）を備えてもよい。処理モジュール／ユニット／ロジック１５２８は、例えば、制御モジュール３０５又は機器学習エンジン１２２のような上記構成要素のいずれかを示してもよい。処理モジュール／ユニット／ロジック１５２８は、さらにデータ処理システム１５００により実行される期間にメモリ１５０３内及び／又はプロセッサ１５０１内に完全又は少なくとも部分的に存在してもよく、ここで、メモリ１５０３及びプロセッサ１５０１も、機器アクセス可能な記憶媒体を構成する。処理モジュール／ユニット／ロジック１５２８は、さらにネットワークによってネットワークインターフェース装置１５０５を経由して送受信されてもよい。
【００７１】
コンピュータ可読記憶媒体１５０９は、以上に説明されたいくつかのソフトウェア機能の一部を永続的に記憶してもよい。コンピュータ可読記憶媒体１５０９は、例示的な実施形態において単一の媒体として示されたが、用語「コンピュータ可読記憶媒体」は、前記１つ又は複数の命令セットが記憶される単一の媒体又は複数の媒体（例えば、集中型又は分散型データベース、及び／又は関連するキャッシュ及びサーバ）を備えることを理解すべきである。用語「コンピュータ可読記憶媒体」は、さらに命令セットを記憶又はコーディング可能な任意の媒体を備えることを理解すべきであり、前記命令セットは、機器により実行されかつ前記機器に本発明の任意の１種又は複数種の方法を実行させる。従って、用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリ及び光学媒体と磁気媒体又は任意の他の非一時的機械可読媒体を備えるが、それらに限定されないことを理解すべきである。
【００７２】
本明細書に記載の処理モジュール／ユニット／ロジック１５２８、構成要素及び他の特徴は、ディスクリートハードウェアコンポーネントとして実現されてもよく、又はハードウェアコンポーネント（例えばＡＳＩＣs、ＦＰＧＡ、ＤＳＰ又は類似装置）の機能に統合されてもよい。さらに、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置内のファームウェア又は機能回路として実現されてもよい。また、処理モジュール／ユニット／ロジック１５２８は、ハードウェア装置及びソフトウェアコンポーネントの任意の組合せで実現されてもよい。
【００７３】
なお、システム１５００は、データ処理システムの各種の構成要素を有するように示されているが、構成要素に相互接続させる任意の具体的な構造又は方式を限定するものではないことに注意すべき、それは、このような詳細が本発明の実施形態に密接な関係がないためである。また、より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ及び／又は他のデータ処理システムは、本発明の実施形態と共に使用されてもよい。
【００７４】
上記詳細な説明の一部は、コンピュータメモリにおけるデータビットに対する演算のアルゴリズム及び記号表現で示される。これらのアルゴリズムの説明及び表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。ここで、アルゴリズムは、通常、所望の結果につながる首尾一貫した動作列（ｓｅｑｕｅｎｃｅ  ｏｆ  ｏｐｅｒａｔｉｏｎｓ）と考えられる。これらの動作とは、物理量に対して物理的動作を行う必要となるステップを指す。
【００７５】
ただし、これらの全ての及び類似の用語は、いずれも適切な物理量に関連付けられ、かつただこれらの量に適用される適切なラベルであることに注意すべきである。特に断らない限り、本出願の全体にわたって用語（例えば、添付している特許請求の範囲に説明された用語）による説明とは、コンピュータシステム又は類似の電子計算装置の動作及び処理であり、前記コンピュータシステム又は電子計算装置は、コンピュータシステムのレジスタ及びメモリに物理（例えば、電子）量としてデータを示し、かつ前記データをコンピュータシステムメモリ又はレジスタ又は他のこのような情報メモリ、伝送又は表示装置内において類似に物理量として示される他のデータに変換する。
【００７６】
本発明の実施形態は、さらに本明細書における動作を実行するためのコンピュータプログラムに関する。このようなコンピュータプログラムは、非一時的コンピュータ可読媒体に記憶される。機器可読媒体は、機器（例えば、コンピュータ）可読な形態で情報を記憶する任意の機構を備える。例えば、機器可読（例えば、コンピュータ可読）媒体は、機器（例えば、コンピュータ）可読記憶媒体（例えば、読み出し専用メモリ（「ＲＯＭ」）、ランダムアクセスメモリ（「ＲＡＭ」）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリメモリ）を備える。
【００７７】
上記図面に示される手順又は方法は、ハードウェア（例えば、回路、専用ロジック等）、ソフトウェア（例えば、非一時的コンピュータ可読媒体に具現化される）、又は両方の組合せを含む処理ロジックにより実行されてもよい。前記手順又は方法は、本明細書において特定の順序に応じて説明されるが、説明された動作の一部は、異なる順序に応じて実行されてもよい。また、いくつかの動作は、順番ではなく並行に実行されてもよい。
【００７８】
本発明の実施形態は、いずれかの特定のプログラミング言語を参照して説明されていないが、複数種のプログラミング言語で本明細書に記載の本発明の実施形態の教示を実現できることを理解すべきである。
【００７９】
以上の明細書では、本発明の具体的な例示的な実施形態を参照してその実施形態を説明した。明らかなように、添付している特許請求の範囲に記載の本発明のより広い趣旨及び範囲を逸脱しない限り、様々な変形が可能である。従って、限定的なものではなく例示的なものとして本明細書及び図面を理解すべきである。
【国際調査報告】
2019501809.tif 000054
2019501809.tif 000055