JP2019500256A - 自律走行車の移動をシミュレートするための物理モデル及び機械学習結合方法 - Google Patents

自律走行車の移動をシミュレートするための物理モデル及び機械学習結合方法 Download PDF

Info

Publication number
JP2019500256A
JP2019500256A JP2018517633A JP2018517633A JP2019500256A JP 2019500256 A JP2019500256 A JP 2019500256A JP 2018517633 A JP2018517633 A JP 2018517633A JP 2018517633 A JP2018517633 A JP 2018517633A JP 2019500256 A JP2019500256 A JP 2019500256A
Authority
JP
Japan
Prior art keywords
autonomous vehicle
driving
vehicle
skid
scenario
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018517633A
Other languages
English (en)
Other versions
JP6578439B2 (ja
Inventor
チュー,ファン
コン,チー
ヤン,コアン
ワン,チンカオ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baidu USA LLC
Original Assignee
Baidu USA LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Baidu USA LLC filed Critical Baidu USA LLC
Publication of JP2019500256A publication Critical patent/JP2019500256A/ja
Application granted granted Critical
Publication of JP6578439B2 publication Critical patent/JP6578439B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/14Adaptive cruise control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18145Cornering
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/02Control of vehicle driving stability
    • B60W30/045Improving turning performance
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/0097Predicting future conditions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0019Control system elements or transfer functions
    • B60W2050/0028Mathematical models, e.g. for simulation
    • B60W2050/0031Mathematical model of the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/0083Setting, resetting, calibration
    • B60W2050/0088Adaptive recalibration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • B60W2520/105Longitudinal acceleration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/20Sideslip angle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/18Steering angle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2552/00Input parameters relating to infrastructure
    • B60W2552/05Type of road, e.g. motorways, local streets, paved or unpaved roads
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2555/00Input parameters relating to exterior conditions, not covered by groups B60W2552/00, B60W2554/00
    • B60W2555/20Ambient conditions, e.g. wind or rain
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/10Historical data
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2710/00Output or target parameters relating to a particular sub-units
    • B60W2710/20Steering systems
    • B60W2710/207Steering angle of wheels
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2720/00Output or target parameters relating to overall vehicle dynamics
    • B60W2720/20Sideslip angle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2720/00Output or target parameters relating to overall vehicle dynamics
    • B60W2720/24Direction of travel

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Traffic Control Systems (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)

Abstract

一実施形態では、自律走行車の次の移動の運転シナリオが認識され、運転シナリオは1セットの1つ以上の予め決められたパラメータで表される。当該運転シナリオに対応する物理モデルを利用して、自律走行車の第1の次の移動が計算される。横滑り予測モデルは、当該セットの予め決定されたパラメータに適用されて当該運転シナリオにおける自律走行車の横滑りを予測する。自律走行車の第2の次の移動は、自律走行車の第1の次の移動と予測された横滑りとに基づいて決定される。予測された横滑りは、横滑りを補償するために、第1の次の移動を修正することに使用される。計画及び制御データは、第2の次の移動のために生成され、自律走行車は、当該計画及び制御データに基づいて制御され、運転される。
【選択図】図1

Description

本発明の実施形態は、一般的に自律走行車を走行させることに関するものである。より具体的に、本発明の実施形態は、物理モデル及び機械学習方法を利用して、車両の移動をシミュレートすることに関するものである。
車両が自律走行モード(例えば、無人運転)で走行している場合、乗員、特に運転者を運転に関連するいくつかの責任から解放することができる。自律走行モードで走行している場合、当該車両が車載センサを利用して様々な場所へ案内されることができ、それによりヒューマン・インタラクションの最も少ない場合、又は乗客なしの場合に走行することを可能にする。
モーション計画及び制御は、自律走行において重要な動作である。しかし、自律走行車は、予想外の非常に複雑な移動行為がある可能性がある。異なる道路において異なる速度とステアリング角で走行する異なる車両は、異なる回転半径を有する可能性がある。このような異なる回転半径は、特に、車両が回転するとき正確な制御に影響を与える。多くの場合には、特にUターン、左折又は右折のような回転する場合には、車両は道路状況に応じて、横に滑る可能性がある。これらの横滑り(sideslip)又は滑り(skid)は、制御エラーを招来して、車両に乗る乗客に危険を与える可能性もある。
また、現在の状態および実行されるコマンドに基づいて、次の処理サイクルでの車両状況や状態を決定したり、予測したりすることが重要である。しかし、このような決定や予測を実現するための利用可能な最新の方法がない。
本発明の実施形態は図面の各図において限定的ではなく例示的な形態で示され、図面における同じ図面符号が類似する素子を示す。
図1は、本発明の一実施形態に係るネットワークシステムを示すブロック図である。 図2は、本発明の一実施形態に係る自律走行車の一例を示すブロック図である。 図3は、本発明の一実施形態に係る自律走行車とともに使用されるデータ処理システムの一例を示すブロック図である。 図4Aは、横滑り補償のある車両の運転パターン及び横滑り補償のない車両の運転パターンを示す概略図である。 図4Bは、横滑り補償のある車両の運転パターン及び横滑り補償のない車両の運転パターンを示す概略図である。 図5は、本発明の一実施形態に係る、横滑り予測モデルを作成するためのメカニズムを示すブロック図である。 図6は、本発明の一実施形態に係る自律走行車の横滑りを補償するための手順を示す処理フローである。 図7は、本発明の一実施形態に係る自律走行車を動作させる手順を示すフローチャートである。 図8は、本発明の一実施形態に係る、横滑り予測モデルを作成するための手順を示すフローチャートである。 図9は、本発明の一実施形態に係る運転シナリオ-横滑りのマッピングデータ構造の一例を示すブロック図である。 図10Aは、横滑り補償のある車両の運転パターン及び横滑り補償のない車両の運転パターンを示す概略図である。 図10Bは、横滑り補償のある車両の運転パターン及び横滑り補償のない車両の運転パターンを示す概略図である。 図11は、本発明の一実施形態に係る、運転シナリオ-横滑りのマッピングデータ構造を生成する手順を示すフローチャートである。 図12は、本発明の他の実施形態に係る自律走行車を動作させる手順を示すフローチャートである。 図13は、一実施形態に係るデータ処理システムを示すブロック図である。
以下、説明の詳細を参照しながら、本出願の様々な実施形態及び方法を説明し、図面は、前記様々な実施形態を示す。以下の説明及び図面は、本出願を説明するためのものであり、本出願を限定するものではない。本出願の様々な実施形態を完全に把握するために、多数の特定の詳細を説明する。なお、いくつかの例では、本出願の実施形態に対する簡単な説明を提供するために、周知又は従来技術の詳細について説明していない。
本明細書では「一実施形態」又は「実施形態」とは、当該実施形態について組み合わせて説明された特定特徴、構造又は特性が、本出願の少なくとも一つの実施形態に含まれてもよい。語句「一実施形態では」は、本明細書全体において同一の実施形態を指すとは限らない。
本発明の一態様よると、次の移動サイクルにおける次のルート又は経路セグメントの次の移動(例えば、回転)を決定するとき、計画されたルート情報に基づいて、物理モデル(例えば、所定の公式又はルールセット)によって、車両の次の状況や状態が計算されたり、決定されたりする。計画及び制御データは、当該物理モデルに基づいて生成され、計画及び制御データは、車両が次の移動サイクルでどのように動くかを制御するための十分なデータやコマンドを含む。また、横滑り予測モデルは、計画及び制御データに関連する少なくとも運転パラメータ(driving parameter)のセット及びその時点の運転条件(例えば、道路状況、天候)に適用される。計画及び制御データによって記述された運転シナリオでの横滑り又は滑りが、横滑り予測モデルにより予測される。それから、そのような横滑りを補償するために、予測された横滑りに基づいて計画及び制御データを修正することができる。次に、車両は変更又は補償された計画及び制御データに基づいて制御され、運転される。
一実施形態では、自律走行車の次の移動(next movement)の運転シナリオは認識され、運転シナリオは1つ以上の所定のパラメータのセットで表れる。運転シナリオに対応する物理モデルを利用して、自律走行車の第1の次の移動が計算される。横滑り予測モデルは、当該所定のパラメータのセットに適用され、運転シナリオでの自律走行車の横滑りが予測される。自律走行車の第2の次の移動は、自律走行車の第1の次の移動と予測された横滑りとに基づいて決定される。予測された横滑りは、横滑りを補償するために第1の次の移動の修正に使用される。第2の次の移動の計画及び制御データは生成され、自律走行車は、当該計画及び制御データに基づいて制御され、運転される。
本発明の他の実施形態によると、様々な運転環境や条件において、様々な車両の走行統計情報が車両によって記録されキャプチャされる。また、異なる運転環境や運転シナリオにおける車両の横滑りが測定され、決定される。それから、走行統計情報はデータ分析システムやサーバなどの中央装置によって収集される。走行統計情報及び測定された横滑りを分析して、運転シナリオのリストを作成する。それぞれの運転シナリオは、同一又は類似の運転シナリオで発生する可能性がある特定の横滑りや滑りと関連付けられる。運転シナリオ-横滑り(シナリオ/横滑り)マッピングテーブル又はデータベースが生成される。シナリオ/横滑りマッピングテーブルは、同一又は類似のタイプの様々な車両の走行統計情報及び測定された横滑りに基づいて決定された横滑りに、各運転シナリオをマッピングする。
特定の車両の次の移動をオンラインで決定するとき、その時点で、次の移動のための運転シナリオが決定される。決定された運転シナリオに基づいて、シナリオ/横滑りマッピングテーブルでルックアップ動作が実行され、その時点での運転シナリオに対応する所定の横滑りを取得する。所定の横滑りが次の移動のための計画及び制御データを生成する際に考慮される。車両は、同一又は類似の運転環境や条件で予測された横滑りに対して補償された計画及び制御データに基づいて制御され、運転される。
一実施形態では、運転シナリオのセットが異なるタイプの車両に対して決定される。各運転シナリオは、特定タイプの自律走行車の特定の移動に対応する。各タイプの自律走行車の運転シナリオごとに走行統計情報のセットが取得される。走行統計情報は、車両を制御して走行させるために使用される1つ以上の運転パラメータ(例えば、速度、回転角度)、その時点の運転条件(例えば、道路状況、天候)、及び運転シナリオにおいて運転パラメータと運転条件による横滑りが含まれる。運転シナリオ/横滑りマッピングテーブル又はデータベースが構築される。シナリオ/横滑りマッピングテーブルは、数多くのマッピングエントリを含む。各マッピングエントリは、特定の運転シナリオを、走行統計情報に基づいて計算された横滑りにマッピングする。それから、当該シナリオ/横滑りマッピングテーブルは、類似の運転環境での横滑りを予測するのに利用されて、走行計画及び制御が補償される。
図1は本発明に係る一実施形態に係る自律走行車のネットワーク配置を示すブロック図である。図1を参照して、ネットワーク配置100はネットワーク102によって1つ以上のサーバ103〜104に通信可能に接続することができる自律走行車101を含む。1つの自律走行車が示されているが、ネットワーク102によって複数の自律走行車は互いに接続され、及び/又はサーバ103〜104に接続されることができる。ネットワーク102は、任意のタイプのネットワーク、例えば有線又は無線のローカルエリアネットワーク(LAN)、例えばインターネットのような広域ネットワーク(WAN)、セルラーネットワーク、衛星ネットワーク又はその組み合わせであってもよい。サーバ103〜104は任意のタイプのサーバ又はサーバクラスタ、例えばWebサーバ又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ又はその組み合わせであってもよい。サーバ103〜104は、データ分析サーバ、内容サーバ、交通情報サーバ、地図(マップ)及び興味のあるポイント(POI)サーバ又は位置サーバ等であってもよい。
自律走行車とは、運転者からの入力が非常に少ない又はない場合に案内して環境を通過する自律走行モードに設置される車両である。このような自律走行車は、車両が走行している環境にかかる情報を検出するように配置される1つ又は複数のセンサを含むセンサシステムを備える。車両及びその関連しているコントローラが、検出された情報で案内して環境を通過する。自律走行車101が手動モード、完全自律走行モード又は部分自律走行モードで運転されることができる。
一実施形態では、自律走行車101は、データ処理システム110と、車両制御システム111と、無線通信システム112と、ユーザインターフェースシステム113と、インフォテイメントシステム114と、センサシステム115とを含むが、これらに制限されない。自律走行車101は、通常の車両に含まれるある一般的な構成要素(部材)、例えばエンジン、車輪、ハンドル、変速器等をさらに含んでもよく、前記構成要素は、車両制御システム111及び/又はデータ処理システム110により多種の通信信号及び/又はコマンド(例えば加速信号又はコマンド、減速信号又はコマンド、ステアリング信号又はコマンド、ブレーキ信号又はコマンド等)を使用して制御されることができる。
構成要素110〜115は、インターコネクト、バス、ネットワーク又はそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素110〜115は、コントローラローカルエリアネットワーク(CAN)バスを介して互いに通信可能に接続することができる。CANバスは、マイクロコントローラ及び装置がホストコンピューターのない応用において互いに通信することを許可するような車両バス標準として設計される。それは、最初に自動車内における多重(multiplex)電線のために設計されたメッセージに基づくプロトコルであるが、他のたくさんの環境(状況)にも用いられる。
ここで、図2を参照して、一実施形態では、センサシステム115は、1つ以上のカメラ211と、全地球測位システム(GPS)ユニット212と、慣性計測ユニット(IMU)213と、レーダーユニット214と、光検出及び測距(LIDAR)ユニット215とを含むが、これらに限定されない。GPSシステム212は、送受信機を含んでもよく、前記送受信機は、自律走行車の位置に関する情報を提供するように処理されることができる。IMUユニット213は、慣性加速度に基づいて自律走行車の位置及び方向の変化を感知することができる。レーダーユニット214は、無線信号を利用して自律走行車のローカル環境内の対象を感知するシステムを示すことができる。いくつかの実施形態において、対象を感知する以外、レーダーユニット214は、さらに対象の速度及び/又は走行方向を感知することができる。LIDARユニット215はレーザを使用して自律走行車の位置する環境における対象を感知することができる。その他のシステム構成要素以外、LIDARユニット215は1つ以上のレーザ光源、レーザースキャナ及び1つ以上の検出器をさらに含んでもよい。カメラ211は、自律走行車の周辺環境の画像をキャプチャするための1つ以上の装置を含んでもよい。カメラ211は、スチルカメラ及び/又はビデオカメラであってもよい。カメラは、例えば回転及び/又は傾斜のプラットフォームに取り付けられる、機械的に移動可能なものであってもよい。
センサシステム115は、その他のセンサ、例えばソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ(例えばマイクロフォン)をさらに含んでもよい。オーディオセンサは、自律走行車周辺の環境から音をキャプチャするように配置されてもよい。ステアリングセンサは、ハンドル、車両の車輪又はその組み合わせのステアリング角を感知するように配置されることができる。スロットルセンサ及びブレーキセンサは、それぞれ車両のスロットル位置及びブレーキ位置を感知する。いくつかの場合、スロットルセンサ及びブレーキセンサは、集積型スロットル/ブレーキセンサに一体化されてもよい。
一実施形態では、車両制御システム111は、ステアリングユニット201、スロットルユニット202(加速ユニットでも呼ばれる)、ブレーキユニット203、コンピュータビジョンシステム204、ナビゲーションユニット205(ナビゲーションとルートシステム、又はナビゲーション/ルートシステムとも呼ばれる)及び衝突回避ユニット206(障害物回避システムでも呼ばれる)を含むが、これらに限定されない。ステアリングユニット201は、車両の方向又は走行方向を調整することに用いられる。スロットルユニット202は、モーター又はエンジンの速度を制御して、さらに車両の速度及び加速度を制御することに用いられる。ブレーキユニット203は、摩擦を提供することによって車両の車輪又はタイヤをスローダウンして車両を減速させることに用いられる。
コンピュータビジョンユニット又はシステム204は、自律走行車の環境内の対象及び/又は特徴を認識するために1つ以上のカメラ211によってキャプチャされた画像を処理し、分析するものである。対象は、交通信号、道路境界、他の車両、歩行者、及び/又は障害物などを含むことができる。コンピュータビジョンシステム204は、対象認識アルゴリズム、ビデオ追跡及び他のコンピュータビジョン技術を使用することができる。いくつかの実施形態では、コンピュータビジョンシステム204は、環境をマッピングして、対象を追跡し、対象の速度を推定することなどができる。
ナビゲーションユニット又はシステム205は、自律走行車の走行経路を決定するものである。例えば、ナビゲーションシステムは、自律走行車を最終的な目的地に至る車道ベースの経路に沿って一般的に前進させるとともに、感知された障害物をだいたい避けるような経路に沿って移動する一連の速度と進行方向(directional heading)を決定することができる。目的地は、ユーザインターフェースを介してユーザ入力に応じて設定されてもよい。ナビゲーションシステム205は、自律走行車が走行している間、走行経路を動的に更新することができる。ナビゲーションシステム205は、自律走行車に用いられる走行経路を決定するためにGPSシステム、及び1つ以上のマップからのデータを統合してもよい。
衝突回避ユニット又はシステム206は、自律走行車の環境での潜在的な障害物を認識、評価、回避又は他の方法で乗り越えるものである。例えば、衝突回避システム206は、緊急回避(swerve)処理、回転処理、制動処理などを行うために、制御システムの1つ以上のサブシステムを処理することで、自律走行車のナビゲーションにおける変化を実現することができる。衝突回避システム206は、周辺の交通パターン、道路状況等に基づいて、実現可能な障害物回避処理を自動的に決定することができる。衝突回避システム206は、自律走行車が緊急回避して進入しようとする隣接領域における車両、建築の障害物などが他のセンサシステムにより検出されたとき、緊急回避処理が行われないように構成されることができる。衝突回避システム206が、使用可能でありながら自律走行車の乗員の安全性を最大化する処理を自動的に選択することができる。衝突回避システム206は、自律運行車両の乗客室に対して最低限の加速を引き起こすと予想される回避処理を選択することができる。注意すべきなことは、図2に示される構成要素はハードウェア、ソフトウェア又はその組み合わせで実現されてもよい。
図1を再び参照して、無線通信システム112は、自律走行車101と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを可能にする。例えば、無線通信システム112は、1つ以上の装置に直接に又は通信ネットワークを介して無線通信し、例えばネットワーク102によってサーバ103〜104に通信することができる。無線通信システム112は、任意のセルラー通信ネットワーク又は無線ローカルエリアネットワーク(WLAN)(例えばWiFi)を使用して他の構成要素やシステムに通信することができる。無線通信システム112は、例えば赤外線リンク、ブルートゥース等を使用して装置(例えば、乗客の移動装置、表示装置、車両101内のスピーカー)に直接に通信することができる。ユーザインターフェースシステム113は、車両101内で実行される周辺装置の一部であってもよく、例えばキーワード、タッチスクリーンディスプレイ装置、マイクロフォン、及びスピーカー等を含む。
自律走行車101全ての一部の機能は、特に自律走行モードで処理される場合、データ処理システム110により制御されたり管理されたりすることができる。データ処理システム110は、必要なハードウェア(例えば、プロセッサ、メモリ、記憶装置)、及びソフトウェア(例えば、オペレーティングシステム、計画及びルーティングプログラム)を含み、センサシステム115、制御システム111、無線通信システム112、及び/又はユーザインターフェースシステム113から情報を受信し、受信された情報を処理し、出発地から目的地までのルートや経路を計画し、そして計画及び制御情報に基づいて車両101を走行させる。あるいは、データ処理システム110と車両制御システム111とは一体化されてもよい。
例えば、乗客であるユーザは、例えばユーザインターフェースによって旅程の出発位置及び目的位置を指定することができる。データ処理システム110は、自律走行車101の他の構成要素と通信して旅程関連データを取得する。例えば、データ処理システム110は、位置サーバ及び地図及びPOI(MPOI)サーバから位置及びルート情報を取得することができ、前記MPOIサーバはサーバ103〜104の一部であってもよい。位置サーバは、位置サービスを提供し、かつMPOIサーバはマップサービス及びある位置のPOIを提供する。あるいは、このような位置及びMPOI情報は、感知及び計画システム110の不揮発性記憶装置にローカルにキャッシュされることができる。
自律走行車101がルートに沿って走行する期間に、データ処理システム110は、さらに交通情報システムやサーバ(TIS)からリアルタイム交通情報を取得できる。注意すべきなのは、サーバ103〜104は、第三者エンティティにより動作されることができる。あるいは、サーバ103〜104の機能は、データ処理システム110と一体化されてもよい。リアルタイム交通情報、MPOI情報、位置情報、及びセンサシステム115が検出又は感知したリアルタイムなローカル環境データ(例えば、障害物、対象、付近車両)に基づいて、データ処理システム110は、指定された目的地に安全で効果的に到達するように、最適なルートを計画し、かつ計画したルートにより例えば制御システム111を介して車両101を運転することができる。
一実施形態によると、自律走行車101は、車両101の乗客に情報とエンターテインメントを提供するインフォテイメントシステム114をさらに含むことができる。情報及びエンターテイメントコンテンツは、ローカル及び/又はリモートに(例えば、サーバ103乃至104によって提供される)記憶されたコンテンツ情報に基づいて、受信、コンパイル、及びレンダリングされる。例えば、情報はネットワーク102を介して任意のサーバ103乃至104からリアルタイムでストリーミングされて車両101のディスプレイ装置上に表示される。情報は、例えば、1つ以上のカメラでリアルタイムにキャプチャされたローカル情報によって拡張される(augmented)ことができ、それから、拡張されたコンテンツは、仮想現実の方法で表示されてもよい。
一実施形態では、位置及びルート情報、MPOI情報、及び/又はリアルタイムの交通情報に基づいて、インフォテインメントシステム114及び/又はデータ処理システム110は、現在の交通環境(例えば、MPOI)に適切なあるタイプのコンテンツを決定する。システムは、例えばリアルタイムの走行情報に基づいて、リストコンテンツアイテム(例えば、スポンサーされたコンテンツや広告)をコンテンツアイテムの候補として認識するために、コンテンツのインデックス(図示せず)においてルックアップ処理を実行する。選択されたコンテンツアイテムは、その後、自律走行車のディスプレイ装置上に描画して表示される。なお、一部の実施形態によれば、インフォテインメントシステム114は、データ処理システム110と一体化されてもよい。
一実施形態では、次の移動サイクルにおける次のルート又は経路セグメントの次の移動(例えば、回転)を決定するとき、データ処理システム110は、計画されたルート情報に基づいて、物理モデル(例えば、所定の公式又はルールセット)によって、車両の次の状況や状態を計算したり、決定したりする。物理モデルは、車両の周囲の環境に対する感知をもとに自律走行車の移動を計画し制御するように構成されたルール又はアルゴリズムのセットを意味する。計画及び制御データは、当該物理モデルに基づいて生成され、計画及び制御データは、車両が次の移動サイクルでどのように動くかを制御するための十分なデータやコマンドを含む。また、横滑り予測モデルは、計画及び制御データに関連する少なくとも運転パラメータのセット及びその時点の運転条件(例えば、道路状況、天候)に適用される。計画及び制御データによって記述された運転シナリオでの横滑り又は滑りが、横滑り予測モデルにより予測される。それから、そのような横滑りを補償するために、予測された横滑りに基づいて計画及び制御データを修正することができる。次に、車両は変更又は補償された計画及び制御データに基づいて制御され、運転される。
横滑り予測モデルは、データ処理システム110に保存されることができ、データ分析システム(この例ではサーバ103)によって横滑り予測モデル165の一部として提供されてもよい。一実施形態では、データ分析システム103は、データコレクタ又は収集モジュール151、分析モジュール152及び機械学習エンジン160を含むが、これらに限定されるものではない。データコレクタ151は、様々な運転環境や運転条件で通って運転された様々な走行車両から走行統計情報155を収集する。
車両の走行統計情報は、車両の1つ以上のセンサにより記録されキャプチャされる。走行統計情報は、異なる運転シナリオを示す異なる時点で車両に適用される、ある運転パラメータ又はコマンドを含むことができる。たとえば、特定の運転環境で走行するとき、速度、回転角度、加速度(例えば、アクセルペダルに与えられる圧力のようなスロットルパラメータ)、減速度(例えば、ブレーキペダルに与えられる圧力のようなブレーキパラメータ)のようないくつかの運転パラメータが記録されてもよい。また、様々な環境での車両の横滑りは、対応する運転パラメータのセットと関連付けされるように測定され、記録される。横滑りは、車両の到達する予定である第1の場所又は位置(図4Aに示される)と、車両の運転条件により実際に到達した第2の場所又は位置(図4Bに示される)との間の距離又は経路の差を意味する。運転条件は、道路状況、天候、車両の具体的な重量又は寸法、速度、回転角度、加速度、又は減速度のうちの1つ以上に基づいて決定されることができる。車両の予想位置は、計画どおりに運転パラメータが定められて、所定の公式(物理モデルでも呼ばれる)によって決定されることができる。つまり、車両の予想位置は、道路状況や気象条件を考慮せずに、車両と関連付けられている物理モデルに基づいて決定される。
一実施形態によると、様々な運転シナリオにおいて、様々な車両の横滑り及びキャプチャされた運転パラメータが、機械学習技術を利用した機械学習エンジン160によって分析されて、1つ以上の横滑り予測モデル165を生成することができる。機械学習は、データから学習することができ、データを予測できるアルゴリズムの研究および構造を探索する。これらのアルゴリズムは、データ駆動型の予測又は決定を行うために、静的プログラムコマンド(static program instruction)を厳密に従うより、例示の入力からモデルが作成されることで処理される。
図5を参照すると、車両の横滑りを予測するとき、機械学習エンジン160の入力は、大量の走行統計情報とそれに対応する測定された横滑りのパラメータ501である。機械学習エンジン160は、走行統計情報155に基づいて、横滑りが発生する運転パターンを「学習」して、機械学習の結果として、予測モデル165の一部でもよい横滑り予測モデル502を生成する。各タイプの車両は、異なる横滑りをもたらす異なる構成と物理寸法を持つ可能性があるため、各予測モデル165は、特定タイプ又はカテゴリの車両と関連付けられてもよい。それから、横滑り予測モデル165は、オンライン横滑り予測のために、車両にアップロードされてもよい。
他の実施形態によれば、図1を再び参照すると、分析モジュール152は、一連の運転シナリオを認識するために、走行統計情報155の分析を実行する。運転シナリオは、特定の速度(一定の速度、加速度、又は減速度を維持する)で特定の距離を走行すること、特定の速度により特定の回転角度で回転すること、特定の速度および/又は角度で車線を変更することなどの特定の運転パターンを指す。各運転シナリオについては、分析モジュール152は、走行統計情報155から対応する運転シナリオの間に発生した横滑りを決定する。特定の運転シナリオの横滑りは、同一又は類似する運転シナリオにおいて、同一又は類似のタイプの数多くの車両が発生した大量の横滑りに基づいて決定されることができる。たとえば、類似する運転環境において測定された複数の類似車両の横滑りの平均をとることにより、横滑りが決定されてもよい。
分析に基づいて、シナリオ/横滑りマッピングテーブル又はデータベース170が生成される。各シナリオ/横滑りマッピングテーブルは、複数のマッピングエントリを含む。各マッピングエントリは、特定の運転シナリオを横滑りにマッピングする。横滑りは回転半径で表されることができる。車両の各タイプ又はカテゴリに対して、1つのシナリオ/横滑りマッピングテーブルを提供することができる。シナリオ/横滑りマッピングテーブル170は、対応する車両にロードされてリアルタイムの運転期間に使用される。
図3は、本発明の一実施形態に係る自律走行車とともに使用されるデータ処理システムの一例を示すブロック図である。システム300は、図1の自律走行車101の一部として実現されてもよく、データ処理システム110、制御システム111およびセンサシステム115を含むが、これらに限定されない。図3を参照すると、データ処理システム110は、ビジュアルシステムモジュール(VSM、visual system module)301、位置決めジュール(302、localization module)、感知モジュール303、計画モジュール304、制御モジュール305および横滑り決定モジュール306を含む。
これらのモジュールの一部又は全部は、ソフトウェア、ハードウェア、又はこれらを組み合わせて実現されてもよい。例えば、これらのモジュールは、不揮発性の記憶装置352に設置され、メモリ351にロードされ、1つ以上のプロセッサ(図示せず)によって実行される。これらのモジュールの一部又は全部は、図2の車両制御システム111の一部又はすべてのモジュールと通信可能に連結又は一体化されてもよい。例えば、VSMモジュール301は、コンピュータビジョンシステム204と、少なくとも部分的に一体化されてもよい。感知モジュール303、計画モジュール304および/又は制御モジュール305は、ナビゲーションユニット205と衝突回避ユニット206と、少なくとも部分的に一体化されてもよい。
一実施形態によると、センサシステム115によってキャプチャされたセンサデータ(例えば、画像)に応答して、VSMモジュール301は、センサデータの分析を実行して、自律走行車の周辺環境を記述するメタデータを導出する。たとえば、オンボードカメラでキャプチャされた画像が与えられると、VSMモジュール301は、画像によって表現されたコンテンツを決定するために、画像の画像認識を行うことができる。画像によって表現されたコンテンツは、人、ビルのような背景、標識、交通信号灯の信号、走行中の車両又は物体、車路構成などを含んでもよい。
位置決めモジュール302(地図及びルートモジュールとも呼ばれる)は、ユーザの行程やルートに関連する任意のデータを管理する。ユーザは、例えば、ユーザインターフェースを介してログインして行程の出発位置と目的地を指定することができる。位置決めモジュール302は、地図及びルート情報311のような自律走行車300の他の構成要素と通信して、行程関連のデータを取得する。たとえば、位置決めモジュール302は、位置サーバ及び地図及びPOI(MPOI)サーバから、位置及びルート情報を取得することができる。位置サーバは、位置情報サービスを提供し、MPOIサーバは地図サービスと、ある場所のPOIを提供し、これは地図及びルート情報311の一部としてキャッシュされる。自律走行車300がルートに沿って移動する間に、位置決めモジュール302は、また、交通情報システム、又はサーバからリアルタイムの交通情報を取得することができる。
VSM301によって提供された分析と、位置決めモジュール302によって取得されたローカリゼーション情報とに基づいて、感知モジュール303は周囲の環境の感知を決定する。感知情報は、普通の運転者が運転している車両の周辺から感知したもの(状況)を示すことができる。感知は、例えば対象形式で現される車線配置(例えば、直線またはカーブ)、交通信号灯の信号、他の車両の相対位置、歩行者、建築物、横断歩道またはその他の交通関連標識(例えば、停止標識、譲り標識)などを含んでもよい。それぞれのアイテムは、対象とみなされる。
感知情報に基づいて、計画モジュール304は、自律走行車のための経路又はルート及び運転パラメータ(例えば、距離、速度)を計画するものである。計画及び制御データは、計画モジュール304によって生成され、車両300が、次のルート又はルートセグメント(また、次の移動サイクルとも呼ばれる)でどのように移動するかを記述する情報を含む。たとえば、計画及び制御データは、車両が時速30マイル(mph)の速度で100m移動して、25mphの速度で右側車線に変更するよう指示することができる。
計画及び制御データに基づいて、制御モジュール305は、計画及び制御データによって定義されたルート又は経路に基づいて、車両制御システム111に適切なコマンド又は信号を送信することにより、自律走行車を制御する。計画及び制御データには、経路、又はルート上の異なる時点で、適切な車両設定又は運転パラメータ(例えば、スロットル、ブレーキ、および回転コマンド)を使用して、ルート又は経路の第1地点から第2地点までの車両を走行させることができる十分な情報が含まれている。
一実施形態によると、車両の次の移動を計画するとき、計画モジュール304は、横滑り決定モジュール306を呼び出して、次の移動の運転シナリオの横滑りを決定したり予測したりする。計画モジュール304は、感知モジュール303によって提供される感知に基づいて、物理モデル、又は、あらかじめ決定された式312を使用して、次の移動を決定することができる。次の移動に応答して、横滑り決定モジュール306は、図6に示すように、横滑り予測モデル313を物理モデル312によって生成された運転パラメータのセットに適用することにより、次の移動に関連した横滑りを決定する。
図6を参照すると、次の移動に用いられる1セットの運転パラメータ601が、物理モデル312と横滑り予測モデル313の両方に送り込まれる。運転パラメータは、道路の種類や状態、天候(例えば、温度、湿度)、車両速度、車両の目標角度、車両加速度/減速度、ステアリング角、転向目標角度、ステアリング速度及びステアリング方向のうちの1つ以上を含んでもよい。運転パラメータ601により、物理モデル312は、次の移動602(例えば、横滑り補償なしの予定移動)を決定することができる。例えば、物理モデル312は、前輪の角度、前輪と後輪との間の距離により、現在移動経路の曲率を計算することができる。車両の速度と経路の長さによって、車両の位置移動が決定されることができる。
また、横滑り予測モデル313は、運転パラメータ601によって表現された運転シナリオにおいて横滑りを推測又は予測する1セットの運転パラメータ601に適用される。計算された移動602に基づいて、計画モジュール304は、計算された移動602を変更して、補償された移動604を生成することにより、予測された横滑り603に基づいて、横滑りを補償することができる。一実施形態では、車両の変更又は補償された位置は、物理モデル、車輪の動きおよび予測された横滑りに基づいて、本来の計算された位置に基づいて(例えば、追加することにより、)決定されることができる。次の移動のための計画及び制御データは、補償された移動604に基づいて生成され、車両は当該計画及び制御データに基づいて制御され、運転される。
図7は、本発明の一実施形態に係る自律走行車を動作させる手順を示すフローチャートである。手順700は、ソフトウェア、ハードウェア、又はこれらの組み合わせを含む処理ロジックによって実行されることができる。例えば、手順700は、データ処理システム110によって実行されてもよい。図7を参照すると、ブロック701において、オンライン走行中に、処理ロジックは、物理モデル(又は予め決定されたアルゴリズム又はルールのセット)を利用して、運転パラメータのセットに基づいて、自律走行車の次の移動(例えば、次の状態又は状況)を計算する。ブロック702において、処理ロジックは、横滑り予測モデルを、特定の運転シナリオを示す運転パラメータのセットに適用して、横滑りを予測する。ブロック703において、処理ロジックは、運転パラメータを変更することにより、予測された横滑りに基づいて、車両の次の移動を補償する。ブロック704において、処理ロジックは、補償された次の移動に基づいて、計画及び制御データを生成する。ブロック705において、自律走行車は、計画及び制御データに基づいて制御され、運転される。
図8は、本発明の一実施形態に係る機械学習を利用して、横滑り予測モデルを生成する手順を示すフローチャートである。手順800は、ソフトウェア、ハードウェア、又はこれらの組み合わせを含む処理ロジックによって実行されることができる。手順800は、図1のサーバ103のようなデータ分析システムによって実行されてもよい。図8を参照すると、ブロック801において、処理ロジックは、様々な運転シナリオにおける様々な車両の走行統計情報を収集し、当該走行統計情報は、適用された運転パラメータ又はコマンドと、前述した状況で車両によって測定された横滑りとを含む。ブロック802において、各タイプ又はカテゴリの車両については、処理ロジックは、機械学習技術を利用して、対応する走行統計情報に基づいて、横滑り予測モデルを訓練させる。ブロック803において、横滑り予測モデルは、次のリアルタイムのオンボード横滑り補償のために自律走行車に提供される(例えば、送信、アップロードされる)。
図3を再度参照すれば、一実施形態によると、横滑りを決定する要求に応答して、横滑り決定モジュール306は、その時点での運転シナリオを決定する。当該運転シナリオは、計画モジュール304によって提供される、計画された次の移動の運転パラメータと、その時点での運転条件(例えば、道路や気象条件)とに基づいて決定されることができる。例えば、運転シナリオは、乾燥した道路において200度のステアリング角及び30mphの速度でUターンすること、ぬれている道路において150度のステアリング角及び20mphの速度で左折をすること、乾燥した道路において100度のステアリング角及び25mphの速度で右折をすることのうちの一つ以上であってもよい。
決定された運転シナリオに基づいて、横滑り決定モジュール306は、シナリオ/横滑りマッピングテーブル314においてルックアップを実行して、その時点の運転シナリオに適合するマッピングエントリを位置決めする。一実施形態によれば、シナリオ/横滑りマッピングテーブル314の一例が図9に示されている。横滑りは、マッピングエントリから取得される。その後、横滑りを補償するために、計画モジュール304は、当該横滑りを利用して計算された運転パラメータを修正する。一実施形態では、ステアリング角は、ルール又は物理モデルのゼットを利用して、次の移動と関連付けられているルート又はルートセグメントに必要な速度に基づいて決定される。次に、ステアリング角は、シナリオ/横滑りマッピングテーブルから取得された、予測された横滑りに基づいて修正される。修正されたステアリング角は自律走行車を計画し制御するために使用される。
例えば、図10Aに示すように、現在の目標が右折をすることである場合には、例えば、物理モデルを利用して、ステアリング角が15度として計算される。車両は高速で走行する場合、横滑りが発生する可能性がある。ステアリング角は、システムによって車両の滑りの発生が検出されたときにいつでも変更されることができるが、横滑りの原因で依然として大きなルートエラーが存在する。前述したような横滑りの補正を行う場合、車両の次の移動を計画するとき、当該状況下で滑りを考慮することが比較的によく、例えば図10Bに示すように、ステアリング角を20度に調整することにより、当該状況下で、車両が計画された経路に近づく。
図11は、本発明の一実施形態に係る、横滑りマッピングデータ構造に運転シナリオを生成する手順を示すフローチャートである。手順1100は、ソフトウェア、ハードウェア、又はこれらの組み合わせを含む処理ロジックによって実行されることができる。手順1100は、図1のサーバ103のようなデータ分析システムによって実行されてもよい。図11を参照すると、ブロック1101において、処理ロジックは、様々な運転環境で様々な車両の走行統計情報(例えば、運転パラメータ、状態、設定および運転条件)を受信する。ブロック1102において、処理ロジックは、走行統計情報に基づいて、回転(例えば、Uターン、左折又は右折)を行う複数の運転シナリオを決定する。決定された運転シナリオごとに、ブロック1103において、処理ロジックは、走行統計情報から運転パラメータ又は設定(例えば、速度、ステアリング角、道路状況、天候)を認識する。ブロック1104において、処理ロジックは、走行統計情報から横滑りを測定し決定する。ブロック1105において、シナリオ/横滑りマッピングテーブルが生成される。シナリオ/横滑りマッピングテーブルには、複数のマッピングエントリが含まれており、各マッピングエントリは、運転シナリオを横滑り又は回転半径にマッピングする。シナリオ/横滑りマッピングテーブルは、それからオンボードの走行期間に横滑りを補償するために用いられることができる。
図12は、本発明の一実施形態に係る自律走行車を動作させる手順を示すフローチャートである。手順1200は、ソフトウェア、ハードウェア、又はこれらの組み合わせを含む処理ロジックによって実行されることができる。例えば、手順1200は、データ処理システム110によって実行されてもよい。図12を参照すると、ブロック1201において、処理ロジックは、自律走行車の次の移動が計画されたルートデータに基づいて行われた回転(例えば、Uターン、左折又は右折)であると検出する。ブロック1202において、処理ロジックは、計画されたルートデータに基づいて、次の移動の運転シナリオ(例えば、速度、加速度/減速度、ステアリング角、道路状況と気象条件)を決定する。ブロック1203において、処理ロジックは、決定された運転シナリオとマッチングするマッピングエントリを位置決めするために、決定された運転シナリオに基づいて、シナリオ/横滑りマッピングテーブルでルックアップ動作を実行する。運転シナリオに対応する横滑りは、マッピングエントリから取得される。ブロック1204において、処理ロジックは、横滑りを補償するために、少なくとも一部の計画された運転パラメータ(例えば、ステアリング角、速度、又はコマンドの発行タイミング)を修正する。ブロック1205において、処理ロジックは、修正された運転パラメータに基づいて計画及び制御データを生成する。ブロック1206において、自律走行車は、計画及び制御データに基づいて制御されて運転される。
注意すべき点は、前記の示されたとともに記述された一部又は全部の構成要素は、ソフトウェア、ハードウェア又はその組み合わせで実現されることができる。例えば、このような構成要素は、永続記憶装置にインストールされるとともに記憶されたソフトウェアとして実現されてもよく、前記ソフトウェアは、本出願にわたって記載の手順又は動作を実施するように、プロセッサ(図示せず)でメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路(例えば特定用途向けIC又はASIC)、デジタル信号プロセッサ(DSP)、又はフィールドプログラマブルゲートアレイ(FPGA、Field Programmable Gate Array)にプログラミングされ又は嵌め込みされた専用ハードウェアにおける実行可能なコードとして実現されてもよく、前記実行可能なコードは、対応するドライバープログラム及び/又はオペレーティングシステムによってアプリケーションからアクセスされてもよい。なお、このような構成要素は、プロセッサ又はプロセッサコアにおける特定のハードウェアロジックとして実現されてもよく、ソフトウェア構成要素が1つ以上の特定コマンドによってアクセス可能なコマンドセットの一部とする。
図13は、本発明の一つの実施形態と組み合わせて使用されるデータ処理システムを例示的に示すブロック図である。例えば、システム1500は、上記プロセス又は方法のいずれかを実行する上記任意のデータ処理システム(例えば、図1のデータ処理システム110、及びサーバ103〜104のいずれか)を示してもよい。システム1500は、多数の異なる構成要素を含んでもよい。これらの構成要素は、集積回路(IC)、集積回路の一部、分散型電子装置又は回路基板に適用された他のモジュール(例えば、コンピュータシステムのマザーボード又はアドインカード)、又は他の方式でコンピュータシステムのシャシーに組み込まれた構成要素として実現されることできる。
さらに、システム1500は、コンピュータシステムの多数の構成要素の高レベルビューを示すことを目的とする。しかしながら、いくつかの実現形態では、付加的構成要素が存在する場合もあることを理解すべきである。また、他の実現形態において示される構成要素が異なる配置を有してもよい。システム1500は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレーヤー、パーソナルディジタルアシスタント(PDA)、スマート腕時計、パーソナルコミュニケーター、ゲーム装置、ネットワークルータ又はハブ、無線アクセスポイント(AP)又はリピーター、セットトップボックス、又はそれらの組合せを示してもよい。また、単一の機器又はシステムのみを示したが、用語「機器」又は「システム」は、さらに、独立又は共同で一つ(又は複数)のコマンドセットを実行することにより本明細書に説明される任意の1種又は複数種の方法を実行する機器又はシステムの任意のセットを含むことを理解すべきである。
一つの実施形態において、システム1500は、バス又は相互接続部材1510によって接続されたプロセッサ1501、メモリ1503及び装置1505〜1508を備える。プロセッサ1501は、単一のプロセッサコア又は複数のプロセッサコアを含む単一のプロセッサ又は複数のプロセッサを示してもよい。プロセッサ1501は、マイクロプロセッサ、中央処理装置(CPU)等のような一つ又は複数の汎用プロセッサであってもよい。より具体的には、プロセッサ1501は、複雑コマンドセット計算(CISC)マイクロプロセッサ、縮小コマンドセットコンピュータ(RISC)マイクロプロセッサ、超長コマンド語(VLIW)マイクロプロセッサ、又は他のコマンドセットを実現するプロセッサ、又はコマンドセットの組合せを実現するプロセッサであってもよい。プロセッサ1501は、さらに、専用集積回路(ASIC)、セルラー又はベースバンドプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ、グラフィックプロセッサ、ネットワークプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような一つ又は複数の専用プロセッサ、あるいはコマンド処理可能な任意の他のタイプのロジックであってもよい。
プロセッサ1501(超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよい)は、前記システムの各種構成要素と通信するための主処理ユニット及び中央ハブとして用いられてもよい。このようなプロセッサは、システムオンチップ(SoC)として実現されることができる。プロセッサ1501は、コマンドを実行することにより本明細書に説明される動作及びステップを実行するためのコマンドを実行するように構成される。また、システム1500は、選択可能なグラフィックサブシステム1504と通信するグラフィックインターフェースをさらに含んでもよく、グラフィックサブシステム1504は、表示コントローラ、グラフィックプロセッサ及び/又は表示装置をさらに備えてもよい。
プロセッサ1501は、メモリ1503と通信してもよく、メモリ1503は、一つの実施形態において複数のメモリによって所定量のシステムメモリを提供する。メモリ1503は、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、シンクロナスDRAM(SDRAM)、スタティックRAM(SRAM)又は他のタイプの記憶装置のような一つ又は複数の揮発性記憶(又はメモリ)装置を備えてもよい。メモリ1503は、プロセッサ1501又は任意の他の装置により実行されるコマンド列を含む情報を記憶することができる。例えば、複数種のオペレーティングシステム、装置ドライバー、ファームウェア(例えば、基本入出力システム又はBIOS)及び/又はアプリケーションの実行可能なコード及び/又はデータはメモリ1503にロードされてもよく、プロセッサ1501により実行されてもよい。オペレーティングシステムは、ロボットオペレーティングシステム(ROS)、Microsoft(登録商標)会社からのWindows(登録商標)オペレーティングシステム、アップル会社からのMac OS(登録商標)/iOS(登録商標)、Google(登録商標)会社からのAndroid(登録商標)、Linux(登録商標)、Unix(登録商標)又は他のリアルタイム又は組み込みオペレーティングシステムのような任意のタイプのオペレーティングシステムであってもよい。
システム1500は、I/O装置、例えば装置1505〜1508をさらに備えてもよく、ネットワークインターフェース装置1505、選択可能な入力装置1506及び他の選択可能なI/O装置1507を備える。ネットワークインターフェース装置1505は、無線送受信機及び/又はネットワークインターフェースカード(NIC)を備えてもよい。前記無線送受信機は、WiFi送受信機、赤外送受信機、ブルートゥース送受信機、WiMax送受信機、無線セルラーホン送受信機、衛星送受信機(例えば、全地球測位システム(GPS)送受信機)又は他の無線周波数(RF)送受信機又はそれらの組合せであってもよい。NICはイーサネットカードであってもよい。
入力装置1506は、マウス、タッチパッド、タッチスクリーン(それは表示装置1504と集積されてもよい)、ポインタデバイス(例えばスタイラス)及び/又はキーボード(例えば、物理キーボード又はタッチスクリーンの一部として表示された仮想キーボード)を備えてもよい。例えば、入力装置1506は、タッチスクリーンに接続されるタッチスクリーンコントローラを含んでもよい。タッチスクリーン及びタッチスクリーンコントローラは、例えば複数種のタッチ感度技術(容量式、抵抗式、赤外式及び表面音波技術を含むが、それらに限定されない)のいずれか、及びタッチスクリーンの一つ又は複数の接触点を決定するための他の近接センサアレイ又は他の素子を用いてそのタッチ点及び移動又は断続を検出することができる。
I/O装置1507は音声装置を備えてもよい。音声装置は、スピーカー及び/又はマイクロフォンを含んでもよく、それにより音声認識、音声コピー、デジタル記録及び/又は電話機能のような音声サポートの機能を促進する。他のI/O装置1507は、汎用シリアルバス(USB)ポート、パラレルポート、シリアルポート、印刷機、ネットワークインターフェース、バスブリッジ(例えば、PCI−PCIブリッジ)、センサ(例えば、加速度計、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサ等のような動きセンサ)又はそれらの組合せをさらに備えてもよい。装置1507は、結像処理サブシステム(例えば、カメラ)をさらに備えてもよく、前記結像処理サブシステムは、カメラ機能(例えば、写真及びビデオ断片の記録)を促進するための電荷カップリング装置(CCD)又は相補型金属酸化物半導体(CMOS)光学センサのような光学センサを備えてもよい。あるセンサは、センサハブ(図示せず)によって相互接続部材1510に接続されてもよく、キーボード又は熱センサのような他の装置は、組み込みコントローラ(図示せず)により制御されてもよく、これはシステム1500の特定配置又は設計により決められる。
データ、アプリケーション、一つ又は複数のオペレーティングシステム等のような情報の永久記憶を提供するために、大容量記憶装置(図示せず)は、プロセッサ1501に接続されてもよい。様々な実施形態において、薄型化と軽量化のシステム設計を実現し且つシステムの応答能力を向上させるために、このような大容量記憶装置は、ソリッドステート装置(SSD)によって実現されることができる。なお、他の実施形態において、大容量記憶装置は、主にハードディスクドライブ(HDD)で実現されてもよく、容量が小さいSSD記憶装置は、SSDキャッシュとして停電イベント期間にコンテキスト状態及び他のこのような情報の永久記憶を実現し、それによりシステム動作が再開するときに通電を速く実現することができる。さらに、フラッシュデバイスは、例えばシリアルペリフェラルインターフェース(SPI)によってプロセッサ1501に接続されてもよい。このようなフラッシュデバイスは、システムソフトウェアの不揮発性記憶に用いられてもよく、前記システムソフトウェアは、前記システムのBIOS及び他のファームウェアを備える。
記憶装置1508は、任意の1種又は複数種の本明細書に記載の方法又は機能を体現する一つ又は複数のコマンドセット又はソフトウェア(例えば、モジュール、ユニット及び/又はロジック1528)が記憶されるコンピュータアクセス可能な記憶媒体1509(機械可読記憶媒体又はコンピュータ可読媒体とも呼ばれる)を備えてもよい。モジュール/ユニット/ロジック1528は、機械学習エンジン160、データコレクタ151、分析モジュール152又は横滑り決定モジュール306のような上記構成要素のいずれかを示してもよい。モジュール/ユニット/ロジック1528は、さらにデータ処理システム1500により実行される期間にメモリ1503内及び/又はプロセッサ1501内に完全又は少なくとも部分的に存在してもよく、ここで、メモリ1503及びプロセッサ1501も、機器アクセス可能な記憶媒体を構成する。処理モジュール/ユニット/ロジック1528は、さらにネットワークによってネットワークインターフェース装置1505を経由して送受信されてもよい。
コンピュータ可読記憶媒体1509は、以上に説明されたいくつかのソフトウェア機能を永続的に記憶してもよい。コンピュータ可読記憶媒体1509は、例示的な実施形態において単一の媒体として示されたが、用語「コンピュータ可読記憶媒体」は、前記一つ又は複数のコマンドセットが記憶される単一の媒体又は複数の媒体(例えば、集中型又は分散型データベース、及び/又は関連するキャッシュ及びサーバ)を備えることを理解すべきである。用語「コンピュータ可読記憶媒体」は、さらにコマンドセットを記憶又はコーディング可能な任意の媒体を備えることを理解すべきであり、前記コマンドセットは、機器により実行され且つ前記機器に本出願の任意の1種又は複数種の方法を実行させる。従って、用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリ及び光学媒体と磁気媒体又は任意の他の非一時的機械可読媒体を備えるが、それらに限定されないことを理解すべきである。
本明細書に記載の処理モジュール/ユニット/ロジック1528、構成要素及び他の特徴は、ディスクリートハードウェア構成要素として実現されてもよく、又はハードウェア構成要素(例えばASICS、FPGA、DSP又は類似装置)の機能に統合されてもよい。さらに、処理モジュール/ユニット/ロジック1528は、ハードウェア装置内のファームウェア又は機能回路として実現されてもよい。また、処理モジュール/ユニット/ロジック1528は、ハードウェア装置及びソフトウェアコンポーネントの任意の組合せで実現されてもよい。
なお、システム1500は、データ処理システムの各種の構成要素を有するように示されているが、構成要素の相互接続のいかなる特定のアーキテクチャー又は方式を示すものではないことに注意すべきであり、それは、このような詳細が本出願の実施形態に密接な関係がないためである。また、より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ及び/又は他のデータ処理システムは、本出願の実施形態と共に使用されてもよい。
上記詳細な説明の一部は、コンピュータメモリにおけるデータビットに対する演算のアルゴリズム及び記号表現で示される。これらのアルゴリズムの説明及び表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。ここで、アルゴリズムは、通常、所望の結果につながる首尾一貫した動作列(sequence of operations)と考えられる。これらの動作とは、物理量に対して物理的動作を行う必要となるステップを指す。
ただし、これらの全て及び類似の用語は、いずれも適切な物理量に関連付けられ、且つただこれらの量に適用される適切なラベルであることに注意すべきである。特に断らない限り、本出願の全体にわたって用語(例えば、添付している特許請求の範囲に説明された用語)による説明とは、コンピュータシステム又は類似の電子計算装置の動作及び処理であり、前記コンピュータシステム又は電子計算装置は、コンピュータシステムのレジスタ及びメモリに物理(例えば、電子)量としてデータを示し、且つ前記データをコンピュータシステムメモリ又はレジスタ又は他のこのような情報記憶装置、伝送又は表示装置内において類似に物理量として示される他のデータに変換する。
本出願の実施形態は、さらに本明細書における動作を実行するための装置に関する。このようなコンピュータプログラムは、不揮発性のコンピュータ可読媒体に記憶される。機器可読媒体は、機器(例えば、コンピュータ)可読な形態で情報を記憶する任意の機構を備える。例えば、機器可読(例えば、コンピュータ可読)媒体は、機器(例えば、コンピュータ)可読記憶媒体(例えば、読み出し専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリメモリ)を備える。
上記図面に示される手順又は方法は、ハードウェア(例えば、回路、専用ロジック等)、ソフトウェア(例えば、不揮発性のコンピュータ可読媒体に具現化される)、又は両方の組合せを含む処理ロジックにより実行されてもよい。前記手順又は方法は、本明細書において特定の順序に応じて説明されるが、説明された動作の一部は、異なる順序に応じて実行されてもよい。また、いくつかの動作は、順番ではなく並行に実行されてもよい。
本出願の実施形態は、いずれかの特定のプログラミング言語を参照して説明されていないが、複数種のプログラミング言語で本明細書に記載の本出願の実施形態の教示を実現できることを理解すべきである。
以上の明細書では、本出願の具体的な例示的な実施形態を参照してその実施形態を説明した。明らかなように、添付している特許請求の範囲に記載の本出願のより広い趣旨及び範囲を逸脱しない限り、様々な変形が可能である。従って、限定的なものではなく例示的なものとして本明細書及び図面を理解すべきである。
本発明の実施形態は、一般的に自律走行車を走行させることに関するものである。より具体的に、本発明の実施形態は、物理モデル及び機械学習方法を利用して、車両の移動をシミュレートすることに関するものである。
車両が自律走行モード(例えば、無人運転)で走行している場合、乗員、特に運転者を運転に関連するいくつかの責任から解放することができる。自律走行モードで走行している場合、当該車両が車載センサを利用して様々な場所へ案内されることができ、それによりヒューマン・インタラクションの最も少ない場合、又は乗客なしの場合に走行することを可能にする。
モーション計画及び制御は、自律走行において重要な動作である。しかし、自律走行車は、予想外の非常に複雑な移動行為がある可能性がある。異なる道路において異なる速度とステアリング角で走行する異なる車両は、異なる回転半径を有する可能性がある。このような異なる回転半径は、特に、車両が回転するとき正確な制御に影響を与える。多くの場合には、特にUターン、左折又は右折のような回転する場合には、車両は道路状況に応じて、横に滑る可能性がある。これらの横滑り(sideslip)又は滑り(skid)は、制御エラーを招来して、車両に乗る乗客に危険を与える可能性もある。
また、現在の状態および実行されるコマンドに基づいて、次の処理サイクルでの車両状況や状態を決定したり、予測したりすることが重要である。しかし、このような決定や予測を実現するための利用可能な最新の方法がない。
本発明の一つの態様によると、自動運転車両を運転するためのコンピュータ実施方法を提供し、この方法は、自律走行車の次の移動に用いられる運転シナリオを認識するステップであって、前記運転シナリオは1つ以上の予め決められたパラメータのセットで表されるステップと、前記運転シナリオに対応する物理モデルを用いて、前記自律走行車の第1の次の移動を計算するステップと、予め決定されたパラメータのセットに横滑り予測モデルを適用して、前記運転シナリオが与えられる場合の前記自律走行車の横滑りを予測するステップと、前記自律走行車の前記第1の次の移動と、前記自律走行車により予測された横滑りとに基づいて、前記自律走行車の第2の次の移動を決定するステップと、前記第2の次の移動に基づいて、計画及び制御データを生成するステップと、前記計画及び制御データに基づいて前記自律走行車を制御し、走行させるステップと、を含む。
本発明の別の態様によると、コマンドが記憶されており、前記コマンドがプロセッサにより実行されるとき、前記プロセッサに、自律走行車を動作させる処理を実行させる、不発揮性の機械可読媒体を提供し、前記処理は、次の移動に用いられる自律走行車の運転シナリオを認識し、前記運転シナリオは1つ以上の予め決められたパラメータのセットで表されることと、前記運転シナリオに対応する物理モデルを用いて、前記自律走行車の第1の次の移動を計算することと、予め決定されたパラメータのセットに横滑り予測モデルを適用して、前記運転シナリオが与えられる場合の前記自律走行車の横滑りを予測することと、前記自律走行車の前記第1の次の移動と、前記自律走行車により予測された横滑りとに基づいて、前記自律走行車の第2の次の移動を決定することと、前記第2の次の移動に基づいて、計画及び制御データを生成することと、前記計画及び制御データに基づいて前記自律走行車を制御し、走行させることと、を含む。
本発明の別の態様によると、プロセッサと、前記プロセッサに連結されてコマンドを記憶するメモリと、を含み、前記メモリがプロセッサにより実行されるとき、前記プロセッサに、自律走行車を動作させる処理を実行させる、データ処理システムを提供し、前記処理は、次の移動に用いられる自律走行車の運転シナリオを認識し、前記運転シナリオは1つ以上の予め決められたパラメータのセットで表されることと、前記運転シナリオに対応する物理モデルを用いて、前記自律走行車の第1の次の移動を計算することと、予め決定されたパラメータのセットに横滑り予測モデルを適用して、前記運転シナリオが与えられる場合の前記自律走行車の横滑りを予測することと、前記自律走行車の前記第1の次の移動と、前記自律走行車により予測された横滑りとに基づいて、前記自律走行車の第2の次の移動を決定することと、前記第2の次の移動に基づいて、計画及び制御データを生成することと、前記計画及び制御データに基づいて前記自律走行車を制御し、走行させることと、を含む。
本発明の実施形態は図面の各図において限定的ではなく例示的な形態で示され、図面における同じ図面符号が類似する素子を示す。
図1は、本発明の一実施形態に係るネットワークシステムを示すブロック図である。 図2は、本発明の一実施形態に係る自律走行車の一例を示すブロック図である。 図3は、本発明の一実施形態に係る自律走行車とともに使用されるデータ処理システムの一例を示すブロック図である。 図4Aは、横滑り補償のある車両の運転パターン及び横滑り補償のない車両の運転パターンを示す概略図である。 図4Bは、横滑り補償のある車両の運転パターン及び横滑り補償のない車両の運転パターンを示す概略図である。 図5は、本発明の一実施形態に係る、横滑り予測モデルを作成するためのメカニズムを示すブロック図である。 図6は、本発明の一実施形態に係る自律走行車の横滑りを補償するための手順を示す処理フローである。 図7は、本発明の一実施形態に係る自律走行車を動作させる手順を示すフローチャートである。 図8は、本発明の一実施形態に係る、横滑り予測モデルを作成するための手順を示すフローチャートである。 図9は、本発明の一実施形態に係る運転シナリオ-横滑りのマッピングデータ構造の一例を示すブロック図である。 図10Aは、横滑り補償のある車両の運転パターン及び横滑り補償のない車両の運転パターンを示す概略図である。 図10Bは、横滑り補償のある車両の運転パターン及び横滑り補償のない車両の運転パターンを示す概略図である。 図11は、本発明の一実施形態に係る、運転シナリオ-横滑りのマッピングデータ構造を生成する手順を示すフローチャートである。 図12は、本発明の他の実施形態に係る自律走行車を動作させる手順を示すフローチャートである。 図13は、一実施形態に係るデータ処理システムを示すブロック図である。
以下、説明の詳細を参照しながら、本出願の様々な実施形態及び方法を説明し、図面は、前記様々な実施形態を示す。以下の説明及び図面は、本出願を説明するためのものであり、本出願を限定するものではない。本出願の様々な実施形態を完全に把握するために、多数の特定の詳細を説明する。なお、いくつかの例では、本出願の実施形態に対する簡単な説明を提供するために、周知又は従来技術の詳細について説明していない。
本明細書では「一実施形態」又は「実施形態」とは、当該実施形態について組み合わせて説明された特定特徴、構造又は特性が、本出願の少なくとも一つの実施形態に含まれてもよい。語句「一実施形態では」は、本明細書全体において同一の実施形態を指すとは限らない。
本発明の一態様よると、次の移動サイクルにおける次のルート又は経路セグメントの次の移動(例えば、回転)を決定するとき、計画されたルート情報に基づいて、物理モデル(例えば、所定の公式又はルールセット)によって、車両の次の状況や状態が計算されたり、決定されたりする。計画及び制御データは、当該物理モデルに基づいて生成され、計画及び制御データは、車両が次の移動サイクルでどのように動くかを制御するための十分なデータやコマンドを含む。また、横滑り予測モデルは、計画及び制御データに関連する少なくとも運転パラメータ(driving parameter)のセット及びその時点の運転条件(例えば、道路状況、天候)に適用される。計画及び制御データによって記述された運転シナリオでの横滑り又は滑りが、横滑り予測モデルにより予測される。それから、そのような横滑りを補償するために、予測された横滑りに基づいて計画及び制御データを修正することができる。次に、車両は変更又は補償された計画及び制御データに基づいて制御され、運転される。
一実施形態では、自律走行車の次の移動(next movement)の運転シナリオは認識され、運転シナリオは1つ以上の所定のパラメータのセットで表れる。運転シナリオに対応する物理モデルを利用して、自律走行車の第1の次の移動が計算される。横滑り予測モデルは、当該所定のパラメータのセットに適用され、運転シナリオでの自律走行車の横滑りが予測される。自律走行車の第2の次の移動は、自律走行車の第1の次の移動と予測された横滑りとに基づいて決定される。予測された横滑りは、横滑りを補償するために第1の次の移動の修正に使用される。第2の次の移動の計画及び制御データは生成され、自律走行車は、当該計画及び制御データに基づいて制御され、運転される。
本発明の他の実施形態によると、様々な運転環境や条件において、様々な車両の走行統計情報が車両によって記録されキャプチャされる。また、異なる運転環境や運転シナリオにおける車両の横滑りが測定され、決定される。それから、走行統計情報はデータ分析システムやサーバなどの中央装置によって収集される。走行統計情報及び測定された横滑りを分析して、運転シナリオのリストを作成する。それぞれの運転シナリオは、同一又は類似の運転シナリオで発生する可能性がある特定の横滑りや滑りと関連付けられる。運転シナリオ-横滑り(シナリオ/横滑り)マッピングテーブル又はデータベースが生成される。シナリオ/横滑りマッピングテーブルは、同一又は類似のタイプの様々な車両の走行統計情報及び測定された横滑りに基づいて決定された横滑りに、各運転シナリオをマッピングする。
特定の車両の次の移動をオンラインで決定するとき、その時点で、次の移動のための運転シナリオが決定される。決定された運転シナリオに基づいて、シナリオ/横滑りマッピングテーブルでルックアップ動作が実行され、その時点での運転シナリオに対応する所定の横滑りを取得する。所定の横滑りが次の移動のための計画及び制御データを生成する際に考慮される。車両は、同一又は類似の運転環境や条件で予測された横滑りに対して補償された計画及び制御データに基づいて制御され、運転される。
一実施形態では、運転シナリオのセットが異なるタイプの車両に対して決定される。各運転シナリオは、特定タイプの自律走行車の特定の移動に対応する。各タイプの自律走行車の運転シナリオごとに走行統計情報のセットが取得される。走行統計情報は、車両を制御して走行させるために使用される1つ以上の運転パラメータ(例えば、速度、回転角度)、その時点の運転条件(例えば、道路状況、天候)、及び運転シナリオにおいて運転パラメータと運転条件による横滑りが含まれる。運転シナリオ/横滑りマッピングテーブル又はデータベースが構築される。シナリオ/横滑りマッピングテーブルは、数多くのマッピングエントリを含む。各マッピングエントリは、特定の運転シナリオを、走行統計情報に基づいて計算された横滑りにマッピングする。それから、当該シナリオ/横滑りマッピングテーブルは、類似の運転環境での横滑りを予測するのに利用されて、走行計画及び制御が補償される。
図1は本発明に係る一実施形態に係る自律走行車のネットワーク配置を示すブロック図である。図1を参照して、ネットワーク配置100はネットワーク102によって1つ以上のサーバ103〜104に通信可能に接続することができる自律走行車101を含む。1つの自律走行車が示されているが、ネットワーク102によって複数の自律走行車は互いに接続され、及び/又はサーバ103〜104に接続されることができる。ネットワーク102は、任意のタイプのネットワーク、例えば有線又は無線のローカルエリアネットワーク(LAN)、例えばインターネットのような広域ネットワーク(WAN)、セルラーネットワーク、衛星ネットワーク又はその組み合わせであってもよい。サーバ103〜104は任意のタイプのサーバ又はサーバクラスタ、例えばWebサーバ又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ又はその組み合わせであってもよい。サーバ103〜104は、データ分析サーバ、内容サーバ、交通情報サーバ、地図(マップ)及び興味のあるポイント(POI)サーバ又は位置サーバ等であってもよい。
自律走行車とは、運転者からの入力が非常に少ない又はない場合に案内して環境を通過する自律走行モードに設置される車両である。このような自律走行車は、車両が走行している環境にかかる情報を検出するように配置される1つ又は複数のセンサを含むセンサシステムを備える。車両及びその関連しているコントローラが、検出された情報で案内して環境を通過する。自律走行車101が手動モード、完全自律走行モード又は部分自律走行モードで運転されることができる。
一実施形態では、自律走行車101は、データ処理システム110と、車両制御システム111と、無線通信システム112と、ユーザインターフェースシステム113と、インフォテイメントシステム114と、センサシステム115とを含むが、これらに制限されない。自律走行車101は、通常の車両に含まれるある一般的な構成要素(部材)、例えばエンジン、車輪、ハンドル、変速器等をさらに含んでもよく、前記構成要素は、車両制御システム111及び/又はデータ処理システム110により多種の通信信号及び/又はコマンド(例えば加速信号又はコマンド、減速信号又はコマンド、ステアリング信号又はコマンド、ブレーキ信号又はコマンド等)を使用して制御されることができる。
構成要素110〜115は、インターコネクト、バス、ネットワーク又はそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素110〜115は、コントローラローカルエリアネットワーク(CAN)バスを介して互いに通信可能に接続することができる。CANバスは、マイクロコントローラ及び装置がホストコンピューターのない応用において互いに通信することを許可するような車両バス標準として設計される。それは、最初に自動車内における多重(multiplex)電線のために設計されたメッセージに基づくプロトコルであるが、他のたくさんの環境(状況)にも用いられる。
ここで、図2を参照して、一実施形態では、センサシステム115は、1つ以上のカメラ211と、全地球測位システム(GPS)ユニット212と、慣性計測ユニット(IMU)213と、レーダーユニット214と、光検出及び測距(LIDAR)ユニット215とを含むが、これらに限定されない。GPSユニット212は、送受信機を含んでもよく、前記送受信機は、自律走行車の位置に関する情報を提供するように処理されることができる。IMUユニット213は、慣性加速度に基づいて自律走行車の位置及び方向の変化を感知することができる。レーダーユニット214は、無線信号を利用して自律走行車のローカル環境内の対象を感知するシステムを示すことができる。いくつかの実施形態において、対象を感知する以外、レーダーユニット214は、さらに対象の速度及び/又は走行方向を感知することができる。LIDARユニット215はレーザを使用して自律走行車の位置する環境における対象を感知することができる。その他のシステム構成要素以外、LIDARユニット215は1つ以上のレーザ光源、レーザースキャナ及び1つ以上の検出器をさらに含んでもよい。カメラ211は、自律走行車の周辺環境の画像をキャプチャするための1つ以上の装置を含んでもよい。カメラ211は、スチルカメラ及び/又はビデオカメラであってもよい。カメラは、例えば回転及び/又は傾斜のプラットフォームに取り付けられる、機械的に移動可能なものであってもよい。
センサシステム115は、その他のセンサ、例えばソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ(例えばマイクロフォン)をさらに含んでもよい。オーディオセンサは、自律走行車周辺の環境から音をキャプチャするように配置されてもよい。ステアリングセンサは、ハンドル、車両の車輪又はその組み合わせのステアリング角を感知するように配置されることができる。スロットルセンサ及びブレーキセンサは、それぞれ車両のスロットル位置及びブレーキ位置を感知する。いくつかの場合、スロットルセンサ及びブレーキセンサは、集積型スロットル/ブレーキセンサに一体化されてもよい。
一実施形態では、車両制御システム111は、ステアリングユニット201、スロットルユニット202(加速ユニットでも呼ばれる)、ブレーキユニット203、コンピュータビジョンシステム204、ナビゲーションユニット205(ナビゲーションとルートシステム、又はナビゲーション/ルートシステムとも呼ばれる)及び衝突回避ユニット206(障害物回避システムでも呼ばれる)を含むが、これらに限定されない。ステアリングユニット201は、車両の方向又は走行方向を調整することに用いられる。スロットルユニット202は、モーター又はエンジンの速度を制御して、さらに車両の速度及び加速度を制御することに用いられる。ブレーキユニット203は、摩擦を提供することによって車両の車輪又はタイヤをスローダウンして車両を減速させることに用いられる。
コンピュータビジョンシステム204は、自律走行車の環境内の対象及び/又は特徴を認識するために1つ以上のカメラ211によってキャプチャされた画像を処理し、分析するものである。対象は、交通信号、道路境界、他の車両、歩行者、及び/又は障害物などを含むことができる。コンピュータビジョンシステム204は、対象認識アルゴリズム、ビデオ追跡及び他のコンピュータビジョン技術を使用することができる。いくつかの実施形態では、コンピュータビジョンシステム204は、環境をマッピングして、対象を追跡し、対象の速度を推定することなどができる。
ナビゲーションシステム205は、自律走行車の走行経路を決定するものである。例えば、ナビゲーションシステムは、自律走行車を最終的な目的地に至る車道ベースの経路に沿って一般的に前進させるとともに、感知された障害物をだいたい避けるような経路に沿って移動する一連の速度と進行方向(directional heading)を決定することができる。目的地は、ユーザインターフェースを介してユーザ入力に応じて設定されてもよい。ナビゲーションシステム205は、自律走行車が走行している間、走行経路を動的に更新することができる。ナビゲーションシステム205は、自律走行車に用いられる走行経路を決定するためにGPSシステム、及び1つ以上のマップからのデータを統合してもよい。
衝突回避システム206は、自律走行車の環境での潜在的な障害物を認識、評価、回避又は他の方法で乗り越えるものである。例えば、衝突回避システム206は、緊急回避(swerve)処理、回転処理、制動処理などを行うために、制御システムの1つ以上のサブシステムを処理することで、自律走行車のナビゲーションにおける変化を実現することができる。衝突回避システム206は、周辺の交通パターン、道路状況等に基づいて、実現可能な障害物回避処理を自動的に決定することができる。衝突回避システム206は、自律走行車が緊急回避して進入しようとする隣接領域における車両、建築の障害物などが他のセンサシステムにより検出されたとき、緊急回避処理が行われないように構成されることができる。衝突回避システム206が、使用可能でありながら自律走行車の乗員の安全性を最大化する処理を自動的に選択することができる。衝突回避システム206は、自律運行車両の乗客室に対して最低限の加速を引き起こすと予想される回避処理を選択することができる。注意すべきなことは、図2に示される構成要素はハードウェア、ソフトウェア又はその組み合わせで実現されてもよい。
図1を再び参照して、無線通信システム112は、自律走行車101と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを可能にする。例えば、無線通信システム112は、1つ以上の装置に直接に又は通信ネットワークを介して無線通信し、例えばネットワーク102によってサーバ103〜104に通信することができる。無線通信システム112は、任意のセルラー通信ネットワーク又は無線ローカルエリアネットワーク(WLAN)(例えばWiFi)を使用して他の構成要素やシステムに通信することができる。無線通信システム112は、例えば赤外線リンク、ブルートゥース(登録商標)等を使用して装置(例えば、乗客の移動装置、表示装置、車両101内のスピーカー)に直接に通信することができる。ユーザインターフェースシステム113は、車両101内で実行される周辺装置の一部であってもよく、例えばキーボード、タッチスクリーンディスプレイ装置、マイクロフォン、及びスピーカー等を含む。
自律走行車101の一部又は全ての機能は、特に自律走行モードで処理される場合、データ処理システム110により制御されたり管理されたりすることができる。データ処理システム110は、必要なハードウェア(例えば、プロセッサ、メモリ、記憶装置)、及びソフトウェア(例えば、オペレーティングシステム、計画及びルーティングプログラム)を含み、センサシステム115、車両制御システム111、無線通信システム112、及び/又はユーザインターフェースシステム113から情報を受信し、受信された情報を処理し、出発地から目的地までのルートや経路を計画し、そして計画及び制御情報に基づいて車両101を走行させる。あるいは、データ処理システム110と車両制御システム111とは一体化されてもよい。
例えば、乗客であるユーザは、例えばユーザインターフェースによって旅程の出発位置及び目的位置を指定することができる。データ処理システム110は、自律走行車101の他の構成要素と通信して旅程関連データを取得する。例えば、データ処理システム110は、位置サーバ及び地図及びPOI(MPOI)サーバから位置及びルート情報を取得することができ、前記MPOIサーバはサーバ103〜104の一部であってもよい。位置サーバは、位置サービスを提供し、かつMPOIサーバはマップサービス及びある位置のPOIを提供する。あるいは、このような位置及びMPOI情報は、感知及び計画システム110の不揮発性記憶装置にローカルにキャッシュされることができる。
自律走行車101がルートに沿って走行する期間に、データ処理システム110は、さらに交通情報システムやサーバ(TIS)からリアルタイム交通情報を取得できる。注意すべきなのは、サーバ103〜104は、第三者エンティティにより動作されることができる。あるいは、サーバ103〜104の機能は、データ処理システム110と一体化されてもよい。リアルタイム交通情報、MPOI情報、位置情報、及びセンサシステム115が検出又は感知したリアルタイムなローカル環境データ(例えば、障害物、対象、付近車両)に基づいて、データ処理システム110は、指定された目的地に安全で効果的に到達するように、最適なルートを計画し、かつ計画したルートにより例えば車両制御システム111を介して車両101を運転することができる。
一実施形態によると、自律走行車101は、車両101の乗客に情報とエンターテインメントを提供するインフォテイメントシステム114をさらに含むことができる。情報及びエンターテイメントコンテンツは、ローカル及び/又はリモートに(例えば、サーバ103乃至104によって提供される)記憶されたコンテンツ情報に基づいて、受信、コンパイル、及びレンダリングされる。例えば、情報はネットワーク102を介して任意のサーバ103乃至104からリアルタイムでストリーミングされて車両101のディスプレイ装置上に表示される。情報は、例えば、1つ以上のカメラでリアルタイムにキャプチャされたローカル情報によって拡張される(augmented)ことができ、それから、拡張されたコンテンツは、仮想現実の方法で表示されてもよい。
一実施形態では、位置及びルート情報、MPOI情報、及び/又はリアルタイムの交通情報に基づいて、インフォテインメントシステム114及び/又はデータ処理システム110は、現在の交通環境(例えば、MPOI)に適切なあるタイプのコンテンツを決定する。システムは、例えばリアルタイムの走行情報に基づいて、リストコンテンツアイテム(例えば、スポンサーされたコンテンツや広告)をコンテンツアイテムの候補として認識するために、コンテンツのインデックス(図示せず)においてルックアップ処理を実行する。選択されたコンテンツアイテムは、その後、自律走行車のディスプレイ装置上に描画して表示される。なお、一部の実施形態によれば、インフォテインメントシステム114は、データ処理システム110と一体化されてもよい。
一実施形態では、次の移動サイクルにおける次のルート又は経路セグメントの次の移動(例えば、回転)を決定するとき、データ処理システム110は、計画されたルート情報に基づいて、物理モデル(例えば、所定の公式又はルールセット)によって、車両の次の状況や状態を計算したり、決定したりする。物理モデルは、車両の周囲の環境に対する感知をもとに自律走行車の移動を計画し制御するように構成されたルール又はアルゴリズムのセットを意味する。計画及び制御データは、当該物理モデルに基づいて生成され、計画及び制御データは、車両が次の移動サイクルでどのように動くかを制御するための十分なデータやコマンドを含む。また、横滑り予測モデルは、計画及び制御データに関連する少なくとも運転パラメータのセット及びその時点の運転条件(例えば、道路状況、天候)に適用される。計画及び制御データによって記述された運転シナリオでの横滑り又は滑りが、横滑り予測モデルにより予測される。それから、そのような横滑りを補償するために、予測された横滑りに基づいて計画及び制御データを修正することができる。次に、車両は変更又は補償された計画及び制御データに基づいて制御され、運転される。
横滑り予測モデルは、データ処理システム110に保存されることができ、データ分析システム(この例ではサーバ103)によって横滑り予測モデル165の一部として提供されてもよい。一実施形態では、データ分析システム103は、データコレクタ又は収集モジュール151、分析モジュール152及び機械学習エンジン160を含むが、これらに限定されるものではない。データコレクタ151は、様々な運転環境や運転条件で通って運転された様々な走行車両から走行統計情報155を収集する。
車両の走行統計情報は、車両の1つ以上のセンサにより記録されキャプチャされる。走行統計情報は、異なる運転シナリオを示す異なる時点で車両に適用される、ある運転パラメータ又はコマンドを含むことができる。たとえば、特定の運転環境で走行するとき、速度、回転角度、加速度(例えば、アクセルペダルに与えられる圧力のようなスロットルパラメータ)、減速度(例えば、ブレーキペダルに与えられる圧力のようなブレーキパラメータ)のようないくつかの運転パラメータが記録されてもよい。また、様々な環境での車両の横滑りは、対応する運転パラメータのセットと関連付けされるように測定され、記録される。横滑りは、車両の到達する予定である第1の場所又は位置(図4Aに示される)と、車両の運転条件により実際に到達した第2の場所又は位置(図4Bに示される)との間の距離又は経路の差を意味する。運転条件は、道路状況、天候、車両の具体的な重量又は寸法、速度、回転角度、加速度、又は減速度のうちの1つ以上に基づいて決定されることができる。車両の予想位置は、計画どおりに運転パラメータが定められて、所定の公式(物理モデルでも呼ばれる)によって決定されることができる。つまり、車両の予想位置は、道路状況や気象条件を考慮せずに、車両と関連付けられている物理モデルに基づいて決定される。
一実施形態によると、様々な運転シナリオにおいて、様々な車両の横滑り及びキャプチャされた運転パラメータが、機械学習技術を利用した機械学習エンジン160によって分析されて、1つ以上の横滑り予測モデル165を生成することができる。機械学習は、データから学習することができ、データを予測できるアルゴリズムの研究および構造を探索する。これらのアルゴリズムは、データ駆動型の予測又は決定を行うために、静的プログラムコマンド(static program instruction)を厳密に従うより、例示の入力からモデルが作成されることで処理される。
図5を参照すると、車両の横滑りを予測するとき、機械学習エンジン160の入力は、大量の走行統計情報とそれに対応する測定された横滑りのパラメータ501である。機械学習エンジン160は、走行統計情報155に基づいて、横滑りが発生する運転パターンを「学習」して、機械学習の結果として、予測モデル165の一部でもよい横滑り予測モデル502を生成する。各タイプの車両は、異なる横滑りをもたらす異なる構成と物理寸法を持つ可能性があるため、各予測モデル165は、特定タイプ又はカテゴリの車両と関連付けられてもよい。それから、横滑り予測モデル165は、オンライン横滑り予測のために、車両にアップロードされてもよい。
他の実施形態によれば、図1を再び参照すると、分析モジュール152は、一連の運転シナリオを認識するために、走行統計情報155の分析を実行する。運転シナリオは、特定の速度(一定の速度、加速度、又は減速度を維持する)で特定の距離を走行すること、特定の速度により特定の回転角度で回転すること、特定の速度および/又は角度で車線を変更することなどの特定の運転パターンを指す。各運転シナリオについては、分析モジュール152は、走行統計情報155から対応する運転シナリオの間に発生した横滑りを決定する。特定の運転シナリオの横滑りは、同一又は類似する運転シナリオにおいて、同一又は類似のタイプの数多くの車両が発生した大量の横滑りに基づいて決定されることができる。たとえば、類似する運転環境において測定された複数の類似車両の横滑りの平均をとることにより、横滑りが決定されてもよい。
分析に基づいて、シナリオ/横滑りマッピングテーブル又はデータベース170が生成される。各シナリオ/横滑りマッピングテーブルは、複数のマッピングエントリを含む。各マッピングエントリは、特定の運転シナリオを横滑りにマッピングする。横滑りは回転半径で表されることができる。車両の各タイプ又はカテゴリに対して、1つのシナリオ/横滑りマッピングテーブルを提供することができる。シナリオ/横滑りマッピングテーブル170は、対応する車両にロードされてリアルタイムの運転期間に使用される。
図3は、本発明の一実施形態に係る自律走行車とともに使用されるデータ処理システムの一例を示すブロック図である。システム300は、図1の自律走行車101の一部として実現されてもよく、データ処理システム110、制御システム111およびセンサシステム115を含むが、これらに限定されない。図3を参照すると、データ処理システム110は、ビジュアルシステムモジュール(VSM、visual system module)301、位置決めジュール(302、localization module)、感知モジュール303、計画モジュール304、制御モジュール305および横滑り決定モジュール306を含む。
これらのモジュールの一部又は全部は、ソフトウェア、ハードウェア、又はこれらを組み合わせて実現されてもよい。例えば、これらのモジュールは、不揮発性の記憶装置352に設置され、メモリ351にロードされ、1つ以上のプロセッサ(図示せず)によって実行される。これらのモジュールの一部又は全部は、図2の車両制御システム111の一部又はすべてのモジュールと通信可能に連結又は一体化されてもよい。例えば、VSMモジュール301は、コンピュータビジョンシステム204と、少なくとも部分的に一体化されてもよい。感知モジュール303、計画モジュール304および/又は制御モジュール305は、ナビゲーションユニット205と衝突回避ユニット206と、少なくとも部分的に一体化されてもよい。
一実施形態によると、センサシステム115によってキャプチャされたセンサデータ(例えば、画像)に応答して、VSMモジュール301は、センサデータの分析を実行して、自律走行車の周辺環境を記述するメタデータを導出する。たとえば、オンボードカメラでキャプチャされた画像が与えられると、VSMモジュール301は、画像によって表現されたコンテンツを決定するために、画像の画像認識を行うことができる。画像によって表現されたコンテンツは、人、ビルのような背景、標識、交通信号灯の信号、走行中の車両又は物体、車路構成などを含んでもよい。
位置決めモジュール302(地図及びルートモジュールとも呼ばれる)は、ユーザの行程やルートに関連する任意のデータを管理する。ユーザは、例えば、ユーザインターフェースを介してログインして行程の出発位置と目的地を指定することができる。位置決めモジュール302は、地図及びルート情報311のような自律走行車300の他の構成要素と通信して、行程関連のデータを取得する。たとえば、位置決めモジュール302は、位置サーバ及び地図及びPOI(MPOI)サーバから、位置及びルート情報を取得することができる。位置サーバは、位置情報サービスを提供し、MPOIサーバは地図サービスと、ある場所のPOIを提供し、これは地図及びルート情報311の一部としてキャッシュされる。自律走行車300がルートに沿って移動する間に、位置決めモジュール302は、また、交通情報システム、又はサーバからリアルタイムの交通情報を取得することができる。
VSM301によって提供された分析と、位置決めモジュール302によって取得されたローカリゼーション情報とに基づいて、感知モジュール303は周囲の環境の感知を決定する。感知情報は、普通の運転者が運転している車両の周辺から感知したもの(状況)を示すことができる。感知情報は、例えば対象形式で現される車線配置(例えば、直線またはカーブ)、交通信号灯の信号、他の車両の相対位置、歩行者、建築物、横断歩道またはその他の交通関連標識(例えば、停止標識、譲り標識)などを含んでもよい。それぞれのアイテムは、対象とみなされる。
感知情報に基づいて、計画モジュール304は、自律走行車のための経路又はルート及び運転パラメータ(例えば、距離、速度)を計画するものである。計画及び制御データは、計画モジュール304によって生成され、車両300が、次のルート又はルートセグメント(また、次の移動サイクルとも呼ばれる)でどのように移動するかを記述する情報を含む。たとえば、計画及び制御データは、車両が時速30マイル(mph)の速度で100m移動して、25mphの速度で右側車線に変更するよう指示することができる。
計画及び制御データに基づいて、制御モジュール305は、計画及び制御データによって定義されたルート又は経路に基づいて、車両制御システム111に適切なコマンド又は信号を送信することにより、自律走行車を制御する。計画及び制御データには、経路、又はルート上の異なる時点で、適切な車両設定又は運転パラメータ(例えば、スロットル、ブレーキ、および回転コマンド)を使用して、ルート又は経路の第1地点から第2地点までの車両を走行させることができる十分な情報が含まれている。
一実施形態によると、車両の次の移動を計画するとき、計画モジュール304は、横滑り決定モジュール306を呼び出して、次の移動の運転シナリオの横滑りを決定したり予測したりする。計画モジュール304は、感知モジュール303によって提供される感知情報に基づいて、物理モデル、又は、あらかじめ決定された式312を使用して、次の移動を決定することができる。次の移動に応答して、横滑り決定モジュール306は、図6に示すように、横滑り予測モデル313を物理モデル312によって生成された運転パラメータのセットに適用することにより、次の移動に関連した横滑りを決定する。
図6を参照すると、次の移動に用いられる1セットの運転パラメータ601が、物理モデル312と横滑り予測モデル313の両方に送り込まれる。運転パラメータは、道路の種類や状態、天候(例えば、温度、湿度)、車両速度、車両の目標角度、車両加速度/減速度、ステアリング角、転向目標角度、ステアリング速度及びステアリング方向のうちの1つ以上を含んでもよい。運転パラメータ601により、物理モデル312は、次の移動602(例えば、横滑り補償なしの予定移動)を決定することができる。例えば、物理モデル312は、前輪の角度、前輪と後輪との間の距離により、現在移動経路の曲率を計算することができる。車両の速度と経路の長さによって、車両の位置移動が決定されることができる。
また、横滑り予測モデル313は、運転パラメータ601によって表現された運転シナリオにおいて横滑りを推測又は予測する1セットの運転パラメータ601に適用される。計算された移動602に基づいて、計画モジュール304は、計算された移動602を変更して、補償された移動604を生成することにより、予測された横滑り603に基づいて、横滑りを補償することができる。一実施形態では、車両の変更又は補償された位置は、物理モデル、車輪の動きおよび予測された横滑りに基づいて、本来の計算された位置に基づいて(例えば、追加することにより、)決定されることができる。次の移動のための計画及び制御データは、補償された移動604に基づいて生成され、車両は当該計画及び制御データに基づいて制御され、運転される。
図7は、本発明の一実施形態に係る自律走行車を動作させる手順を示すフローチャートである。手順700は、ソフトウェア、ハードウェア、又はこれらの組み合わせを含む処理ロジックによって実行されることができる。例えば、手順700は、データ処理システム110によって実行されてもよい。図7を参照すると、ブロック701において、オンライン走行中に、処理ロジックは、物理モデル(又は予め決定されたアルゴリズム又はルールのセット)を利用して、運転パラメータのセットに基づいて、自律走行車の次の移動(例えば、次の状態又は状況)を計算する。ブロック702において、処理ロジックは、横滑り予測モデルを、特定の運転シナリオを示す運転パラメータのセットに適用して、横滑りを予測する。ブロック703において、処理ロジックは、運転パラメータを変更することにより、予測された横滑りに基づいて、車両の次の移動を補償する。ブロック704において、処理ロジックは、補償された次の移動に基づいて、計画及び制御データを生成する。ブロック705において、自律走行車は、計画及び制御データに基づいて制御され、運転される。
図8は、本発明の一実施形態に係る機械学習を利用して、横滑り予測モデルを生成する手順を示すフローチャートである。手順800は、ソフトウェア、ハードウェア、又はこれらの組み合わせを含む処理ロジックによって実行されることができる。手順800は、図1のサーバ103のようなデータ分析システムによって実行されてもよい。図8を参照すると、ブロック801において、処理ロジックは、様々な運転シナリオにおける様々な車両の走行統計情報を収集し、当該走行統計情報は、適用された運転パラメータ又はコマンドと、前述した状況で車両によって測定された横滑りとを含む。ブロック802において、各タイプ又はカテゴリの車両については、処理ロジックは、機械学習技術を利用して、対応する走行統計情報に基づいて、横滑り予測モデルを訓練させる。ブロック803において、横滑り予測モデルは、次のリアルタイムのオンボード横滑り補償のために自律走行車に提供される(例えば、送信、アップロードされる)。
図3を再度参照すれば、一実施形態によると、横滑りを決定する要求に応答して、横滑り決定モジュール306は、その時点での運転シナリオを決定する。当該運転シナリオは、計画モジュール304によって提供される、計画された次の移動の運転パラメータと、その時点での運転条件(例えば、道路や気象条件)とに基づいて決定されることができる。例えば、運転シナリオは、乾燥した道路において200度のステアリング角及び30mphの速度でUターンすること、ぬれている道路において150度のステアリング角及び20mphの速度で左折をすること、乾燥した道路において100度のステアリング角及び25mphの速度で右折をすることのうちの一つ以上であってもよい。
決定された運転シナリオに基づいて、横滑り決定モジュール306は、シナリオ/横滑りマッピングテーブル314においてルックアップを実行して、その時点の運転シナリオに適合するマッピングエントリを位置決めする。一実施形態によれば、シナリオ/横滑りマッピングテーブル314の一例が図9に示されている。横滑りは、マッピングエントリから取得される。その後、横滑りを補償するために、計画モジュール304は、当該横滑りを利用して計算された運転パラメータを修正する。一実施形態では、ステアリング角は、ルール又は物理モデルのゼットを利用して、次の移動と関連付けられているルート又はルートセグメントに必要な速度に基づいて決定される。次に、ステアリング角は、シナリオ/横滑りマッピングテーブルから取得された、予測された横滑りに基づいて修正される。修正されたステアリング角は自律走行車を計画し制御するために使用される。
例えば、図10Aに示すように、現在の目標が右折をすることである場合には、例えば、物理モデルを利用して、ステアリング角が15度として計算される。車両は高速で走行する場合、横滑りが発生する可能性がある。ステアリング角は、システムによって車両の滑りの発生が検出されたときにいつでも変更されることができるが、横滑りの原因で依然として大きなルートエラーが存在する。前述したような横滑りの補正を行う場合、車両の次の移動を計画するとき、当該状況下で滑りを考慮することが比較的によく、例えば図10Bに示すように、ステアリング角を20度に調整することにより、当該状況下で、車両が計画された経路に近づく。
図11は、本発明の一実施形態に係る、横滑りマッピングデータ構造に運転シナリオを生成する手順を示すフローチャートである。手順1100は、ソフトウェア、ハードウェア、又はこれらの組み合わせを含む処理ロジックによって実行されることができる。手順1100は、図1のサーバ103のようなデータ分析システムによって実行されてもよい。図11を参照すると、ブロック1101において、処理ロジックは、様々な運転環境で様々な車両の走行統計情報(例えば、運転パラメータ、状態、設定および運転条件)を受信する。ブロック1102において、処理ロジックは、走行統計情報に基づいて、回転(例えば、Uターン、左折又は右折)を行う複数の運転シナリオを決定する。決定された運転シナリオごとに、ブロック1103において、処理ロジックは、走行統計情報から運転パラメータ又は設定(例えば、速度、ステアリング角、道路状況、天候)を認識する。ブロック1104において、処理ロジックは、走行統計情報から横滑りを測定し決定する。ブロック1105において、シナリオ/横滑りマッピングテーブルが生成される。シナリオ/横滑りマッピングテーブルには、複数のマッピングエントリが含まれており、各マッピングエントリは、運転シナリオを横滑り又は回転半径にマッピングする。シナリオ/横滑りマッピングテーブルは、それからオンボードの走行期間に横滑りを補償するために用いられることができる。
図12は、本発明の一実施形態に係る自律走行車を動作させる手順を示すフローチャートである。手順1200は、ソフトウェア、ハードウェア、又はこれらの組み合わせを含む処理ロジックによって実行されることができる。例えば、手順1200は、データ処理システム110によって実行されてもよい。図12を参照すると、ブロック1201において、処理ロジックは、自律走行車の次の移動が計画されたルートデータに基づいて行われた回転(例えば、Uターン、左折又は右折)であると検出する。ブロック1202において、処理ロジックは、計画されたルートデータに基づいて、次の移動の運転シナリオ(例えば、速度、加速度/減速度、ステアリング角、道路状況と気象条件)を決定する。ブロック1203において、処理ロジックは、決定された運転シナリオとマッチングするマッピングエントリを位置決めするために、決定された運転シナリオに基づいて、シナリオ/横滑りマッピングテーブルでルックアップ動作を実行する。運転シナリオに対応する横滑りは、マッピングエントリから取得される。ブロック1204において、処理ロジックは、横滑りを補償するために、少なくとも一部の計画された運転パラメータ(例えば、ステアリング角、速度、又はコマンドの発行タイミング)を修正する。ブロック1205において、処理ロジックは、修正された運転パラメータに基づいて計画及び制御データを生成する。ブロック1206において、自律走行車は、計画及び制御データに基づいて制御されて運転される。
注意すべき点は、前記の示されたとともに記述された一部又は全部の構成要素は、ソフトウェア、ハードウェア又はその組み合わせで実現されることができる。例えば、このような構成要素は、永続記憶装置にインストールされるとともに記憶されたソフトウェアとして実現されてもよく、前記ソフトウェアは、本出願にわたって記載の手順又は動作を実施するように、プロセッサ(図示せず)でメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路(例えば特定用途向けIC又はASIC)、デジタル信号プロセッサ(DSP)、又はフィールドプログラマブルゲートアレイ(FPGA、Field Programmable Gate Array)にプログラミングされ又は嵌め込みされた専用ハードウェアにおける実行可能なコードとして実現されてもよく、前記実行可能なコードは、対応するドライバープログラム及び/又はオペレーティングシステムによってアプリケーションからアクセスされてもよい。なお、このような構成要素は、プロセッサ又はプロセッサコアにおける特定のハードウェアロジックとして実現されてもよく、ソフトウェア構成要素が1つ以上の特定コマンドによってアクセス可能なコマンドセットの一部とする。
図13は、本発明の一つの実施形態と組み合わせて使用されるデータ処理システムを例示的に示すブロック図である。例えば、システム1500は、上記プロセス又は方法のいずれかを実行する上記任意のデータ処理システム(例えば、図1のデータ処理システム110、及びサーバ103〜104のいずれか)を示してもよい。システム1500は、多数の異なる構成要素を含んでもよい。これらの構成要素は、集積回路(IC)、集積回路の一部、分散型電子装置又は回路基板に適用された他のモジュール(例えば、コンピュータシステムのマザーボード又はアドインカード)、又は他の方式でコンピュータシステムのシャシーに組み込まれた構成要素として実現されることできる。
さらに、システム1500は、コンピュータシステムの多数の構成要素の高レベルビューを示すことを目的とする。しかしながら、いくつかの実現形態では、付加的構成要素が存在する場合もあることを理解すべきである。また、他の実現形態において示される構成要素が異なる配置を有してもよい。システム1500は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレーヤー、パーソナルディジタルアシスタント(PDA)、スマート腕時計、パーソナルコミュニケーター、ゲーム装置、ネットワークルータ又はハブ、無線アクセスポイント(AP)又はリピーター、セットトップボックス、又はそれらの組合せを示してもよい。また、単一の機器又はシステムのみを示したが、用語「機器」又は「システム」は、さらに、独立又は共同で一つ(又は複数)のコマンドセットを実行することにより本明細書に説明される任意の1種又は複数種の方法を実行する機器又はシステムの任意のセットを含むことを理解すべきである。
一つの実施形態において、システム1500は、バス又は相互接続部材1510によって接続されたプロセッサ1501、メモリ1503及び装置1505〜1508を備える。プロセッサ1501は、単一のプロセッサコア又は複数のプロセッサコアを含む単一のプロセッサ又は複数のプロセッサを示してもよい。プロセッサ1501は、マイクロプロセッサ、中央処理装置(CPU)等のような一つ又は複数の汎用プロセッサであってもよい。より具体的には、プロセッサ1501は、複雑コマンドセット計算(CISC)マイクロプロセッサ、縮小コマンドセットコンピュータ(RISC)マイクロプロセッサ、超長コマンド語(VLIW)マイクロプロセッサ、又は他のコマンドセットを実現するプロセッサ、又はコマンドセットの組合せを実現するプロセッサであってもよい。プロセッサ1501は、さらに、専用集積回路(ASIC)、セルラー又はベースバンドプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、グラフィックプロセッサ、ネットワークプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような一つ又は複数の専用プロセッサ、あるいはコマンド処理可能な任意の他のタイプのロジックであってもよい。
プロセッサ1501(超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよい)は、前記システムの各種構成要素と通信するための主処理ユニット及び中央ハブとして用いられてもよい。このようなプロセッサは、システムオンチップ(SoC)として実現されることができる。プロセッサ1501は、コマンドを実行することにより本明細書に説明される動作及びステップを実行するためのコマンドを実行するように構成される。また、システム1500は、選択可能なグラフィックサブシステム1504と通信するグラフィックインターフェースをさらに含んでもよく、グラフィックサブシステム1504は、表示コントローラ、グラフィックプロセッサ及び/又は表示装置をさらに備えてもよい。
プロセッサ1501は、メモリ1503と通信してもよく、メモリ1503は、一つの実施形態において複数のメモリによって所定量のシステムメモリを提供する。メモリ1503は、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、シンクロナスDRAM(SDRAM)、スタティックRAM(SRAM)又は他のタイプの記憶装置のような一つ又は複数の揮発性記憶(又はメモリ)装置を備えてもよい。メモリ1503は、プロセッサ1501又は任意の他の装置により実行されるコマンド列を含む情報を記憶することができる。例えば、複数種のオペレーティングシステム、装置ドライバー、ファームウェア(例えば、基本入出力システム又はBIOS)及び/又はアプリケーションの実行可能なコード及び/又はデータはメモリ1503にロードされてもよく、プロセッサ1501により実行されてもよい。オペレーティングシステムは、ロボットオペレーティングシステム(ROS)、Microsoft(登録商標)会社からのWindows(登録商標)オペレーティングシステム、アップル会社からのMac OS(登録商標)/iOS(登録商標)、Google(登録商標)会社からのAndroid(登録商標)、Linux(登録商標)、Unix(登録商標)又は他のリアルタイム又は組み込みオペレーティングシステム(のような任意のタイプのオペレーティングシステムであってもよい。
システム1500は、I/O装置、例えば装置1505〜1508をさらに備えてもよく、ネットワークインターフェース装置1505、選択可能な入力装置1506及び他の選択可能なI/O装置1507を備える。ネットワークインターフェース装置1505は、無線送受信機及び/又はネットワークインターフェースカード(NIC)を備えてもよい。前記無線送受信機は、WiFi送受信機、赤外送受信機、ブルートゥース(登録商標)送受信機、WiMax送受信機、無線セルラーホン送受信機、衛星送受信機(例えば、全地球測位システム(GPS)送受信機)又は他の無線周波数(RF)送受信機又はそれらの組合せであってもよい。NICはイーサネット(登録商標)カードであってもよい。
入力装置1506は、マウス、タッチパッド、タッチスクリーン(それは表示装置1504と集積されてもよい)、ポインタデバイス(例えばスタイラス)及び/又はキーボード(例えば、物理キーボード又はタッチスクリーンの一部として表示された仮想キーボード)を備えてもよい。例えば、入力装置1506は、タッチスクリーンに接続されるタッチスクリーンコントローラを含んでもよい。タッチスクリーン及びタッチスクリーンコントローラは、例えば複数種のタッチ感度技術(容量式、抵抗式、赤外式及び表面音波技術を含むが、それらに限定されない)のいずれか、及びタッチスクリーンの一つ又は複数の接触点を決定するための他の近接センサアレイ又は他の素子を用いてそのタッチ点及び移動又は断続を検出することができる。
I/O装置1507は音声装置を備えてもよい。音声装置は、スピーカー及び/又はマイクロフォンを含んでもよく、それにより音声認識、音声コピー、デジタル記録及び/又は電話機能のような音声サポートの機能を促進する。他のI/O装置1507は、汎用シリアルバス(USB)ポート、パラレルポート、シリアルポート、印刷機、ネットワークインターフェース、バスブリッジ(例えば、PCI−PCIブリッジ)、センサ(例えば、加速度計、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサ等のような動きセンサ)又はそれらの組合せをさらに備えてもよい。装置1507は、結像処理サブシステム(例えば、カメラ)をさらに備えてもよく、前記結像処理サブシステムは、カメラ機能(例えば、写真及びビデオ断片の記録)を促進するための電荷カップリング装置(CCD)又は相補型金属酸化物半導体(CMOS)光学センサのような光学センサを備えてもよい。あるセンサは、センサハブ(図示せず)によって相互接続部材1510に接続されてもよく、キーボード又は熱センサのような他の装置は、組み込みコントローラ(図示せず)により制御されてもよく、これはシステム1500の特定配置又は設計により決められる。
データ、アプリケーション、一つ又は複数のオペレーティングシステム等のような情報の永久記憶を提供するために、大容量記憶装置(図示せず)は、プロセッサ1501に接続されてもよい。様々な実施形態において、薄型化と軽量化のシステム設計を実現し且つシステムの応答能力を向上させるために、このような大容量記憶装置は、ソリッドステート装置(SSD)によって実現されることができる。なお、他の実施形態において、大容量記憶装置は、主にハードディスクドライブ(HDD)で実現されてもよく、容量が小さいSSD記憶装置は、SSDキャッシュとして停電イベント期間にコンテキスト状態及び他のこのような情報の永久記憶を実現し、それによりシステム動作が再開するときに通電を速く実現することができる。さらに、フラッシュデバイスは、例えばシリアルペリフェラルインターフェース(SPI)によってプロセッサ1501に接続されてもよい。このようなフラッシュデバイスは、システムソフトウェアの不揮発性記憶に用いられてもよく、前記システムソフトウェアは、前記システムのBIOS及び他のファームウェアを備える。
記憶装置1508は、任意の1種又は複数種の本明細書に記載の方法又は機能を体現する一つ又は複数のコマンドセット又はソフトウェア(例えば、モジュール、ユニット及び/又はロジック1528)が記憶されるコンピュータアクセス可能な記憶媒体1509(機械可読記憶媒体又はコンピュータ可読媒体とも呼ばれる)を備えてもよい。モジュール/ユニット/ロジック1528は、機械学習エンジン160、データコレクタ151、分析モジュール152又は横滑り決定モジュール306のような上記構成要素のいずれかを示してもよい。モジュール/ユニット/ロジック1528は、さらにデータ処理システム1500により実行される期間にメモリ1503内及び/又はプロセッサ1501内に完全又は少なくとも部分的に存在してもよく、ここで、メモリ1503及びプロセッサ1501も、機器アクセス可能な記憶媒体を構成する。処理モジュール/ユニット/ロジック1528は、さらにネットワークによってネットワークインターフェース装置1505を経由して送受信されてもよい。
コンピュータ可読記憶媒体1509は、以上に説明されたいくつかのソフトウェア機能を永続的に記憶してもよい。コンピュータ可読記憶媒体1509は、例示的な実施形態において単一の媒体として示されたが、用語「コンピュータ可読記憶媒体」は、前記一つ又は複数のコマンドセットが記憶される単一の媒体又は複数の媒体(例えば、集中型又は分散型データベース、及び/又は関連するキャッシュ及びサーバ)を備えることを理解すべきである。用語「コンピュータ可読記憶媒体」は、さらにコマンドセットを記憶又はコーディング可能な任意の媒体を備えることを理解すべきであり、前記コマンドセットは、機器により実行され且つ前記機器に本出願の任意の1種又は複数種の方法を実行させる。従って、用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリ及び光学媒体と磁気媒体又は任意の他の非一時的機械可読媒体を備えるが、それらに限定されないことを理解すべきである。
本明細書に記載の処理モジュール/ユニット/ロジック1528、構成要素及び他の特徴は、ディスクリートハードウェア構成要素として実現されてもよく、又はハードウェア構成要素(例えばASIC、FPGA、DSP又は類似装置)の機能に統合されてもよい。さらに、処理モジュール/ユニット/ロジック1528は、ハードウェア装置内のファームウェア又は機能回路として実現されてもよい。また、処理モジュール/ユニット/ロジック1528は、ハードウェア装置及びソフトウェアコンポーネントの任意の組合せで実現されてもよい。
なお、システム1500は、データ処理システムの各種の構成要素を有するように示されているが、構成要素の相互接続のいかなる特定のアーキテクチャー又は方式を示すものではないことに注意すべきであり、それは、このような詳細が本出願の実施形態に密接な関係がないためである。また、より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ及び/又は他のデータ処理システムは、本出願の実施形態と共に使用されてもよい。
上記詳細な説明の一部は、コンピュータメモリにおけるデータビットに対する演算のアルゴリズム及び記号表現で示される。これらのアルゴリズムの説明及び表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。ここで、アルゴリズムは、通常、所望の結果につながる首尾一貫した動作列(sequence of operations)と考えられる。これらの動作とは、物理量に対して物理的動作を行う必要となるステップを指す。
ただし、これらの全て及び類似の用語は、いずれも適切な物理量に関連付けられ、且つただこれらの量に適用される適切なラベルであることに注意すべきである。特に断らない限り、本出願の全体にわたって用語(例えば、添付している特許請求の範囲に説明された用語)による説明とは、コンピュータシステム又は類似の電子計算装置の動作及び処理であり、前記コンピュータシステム又は電子計算装置は、コンピュータシステムのレジスタ及びメモリに物理(例えば、電子)量としてデータを示し、且つ前記データをコンピュータシステムメモリ又はレジスタ又は他のこのような情報記憶装置、伝送又は表示装置内において類似に物理量として示される他のデータに変換する。
本出願の実施形態は、さらに本明細書における動作を実行するための装置に関する。このようなコンピュータプログラムは、不揮発性のコンピュータ可読媒体に記憶される。機器可読媒体は、機器(例えば、コンピュータ)可読な形態で情報を記憶する任意の機構を備える。例えば、機器可読(例えば、コンピュータ可読)媒体は、機器(例えば、コンピュータ)可読記憶媒体(例えば、読み出し専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリメモリ)を備える。
上記図面に示される手順又は方法は、ハードウェア(例えば、回路、専用ロジック等)、ソフトウェア(例えば、不揮発性のコンピュータ可読媒体に具現化される)、又は両方の組合せを含む処理ロジックにより実行されてもよい。前記手順又は方法は、本明細書において特定の順序に応じて説明されるが、説明された動作の一部は、異なる順序に応じて実行されてもよい。また、いくつかの動作は、順番ではなく並行に実行されてもよい。
本出願の実施形態は、いずれかの特定のプログラミング言語を参照して説明されていないが、複数種のプログラミング言語で本明細書に記載の本出願の実施形態の教示を実現できることを理解すべきである。
以上の明細書では、本出願の具体的な例示的な実施形態を参照してその実施形態を説明した。明らかなように、添付している特許請求の範囲に記載の本出願のより広い趣旨及び範囲を逸脱しない限り、様々な変形が可能である。従って、限定的なものではなく例示的なものとして本明細書及び図面を理解すべきである。

Claims (21)

  1. 自律走行車を走行させるためのコンピュータ実施方法であって、
    自律走行車の次の移動に用いられる運転シナリオを認識するステップであって、前記運転シナリオは1つ以上の予め決められたパラメータのセットで表されるステップと、
    前記運転シナリオに対応する物理モデルを用いて、前記自律走行車の第1の次の移動を計算するステップと、
    予め決定されたパラメータのセットに横滑り予測モデルを適用して、前記運転シナリオが与えられる場合の前記自律走行車の横滑りを予測するステップと、
    前記自律走行車の前記第1の次の移動と、前記自律走行車により予測された横滑りとに基づいて、前記自律走行車の第2の次の移動を決定するステップと、
    前記第2の次の移動に基づいて、計画及び制御データを生成するステップと、
    前記計画及び制御データに基づいて前記自律走行車を制御し、走行させるステップと、を含む、
    ことを特徴とする方法。
  2. 前記横滑り予測モデルは、複数の異なるタイプの車両により複数の運転シナリオにおいて測定して記録された横滑りと、対応する運転パラメータとに基づいて、機械学習によって生成される、
    ことを特徴とする請求項1に記載の方法。
  3. 前記横滑りは、前記自律走行車の実際の位置と、前記自律走行車により前記物理モデルに基づいて計算された位置との間の距離を示す、
    ことを特徴とする請求項1に記載の方法。
  4. 第2の次の移動を決定するステップは、
    元の位置、車輪の動き、及び前記予測された横滑りを追加することにより、前記自律走行車の最終の位置を計算するステップを含む、
    ことを特徴とする請求項1に記載の方法。
  5. 前記予測された横滑りは、前記物理モデルに基づいて計算された、前記自律走行車の前記第1の移動を補正するために使用される、ことを特徴とする請求項1に記載の方法。
  6. 前記運転シナリオは、前記自律走行車の回転のシナリオを含む、
    ことを特徴とする請求項1に記載の方法。
  7. 前記所定のパラメータは、道路の種類、気象条件、前記自律走行車の速度、前記自律走行車の目標角度、前記自律走行車の加速度又は減速度、前記自律走行車のステアリング角及び前記自律走行車のステアリング角のうちの1つ以上を含む、
    ことを特徴とする請求項1に記載の方法。
  8. コマンドが記憶されており、前記コマンドがプロセッサにより実行されると、前記プロセッサに、自律走行車を動作させる処理を実行させる、不発揮性の機械可読媒体であって、
    前記処理は、
    次の移動に用いられる自律走行車の運転シナリオを認識し、前記運転シナリオは1つ以上の予め決められたパラメータのセットで表されることと、
    前記運転シナリオに対応する物理モデルを用いて、前記自律走行車の第1の次の移動を計算することと、
    予め決定されたパラメータのセットに横滑り予測モデルを適用して、前記運転シナリオが与えられる場合の前記自律走行車の横滑りを予測することと、
    前記自律走行車の前記第1の次の移動と、前記自律走行車により予測された横滑りとに基づいて、前記自律走行車の第2の次の移動を決定することと、
    前記第2の次の移動に基づいて、計画及び制御データを生成することと、
    前記計画及び制御データに基づいて前記自律走行車を制御し、走行させることと、を含む、
    ことを特徴とする不発揮性の機械可読媒体。
  9. 前記横滑り予測モデルは、複数の異なるタイプの車両により複数の運転シナリオにおいて測定して記録された横滑りと、対応する運転パラメータとに基づいて、機械学習によって生成される、
    ことを特徴とする請求項8に記載の機械可読媒体。
  10. 前記横滑りは、前記横滑りは、前記自律走行車の実際の位置と、前記自律走行車により前記物理モデルに基づいて計算された位置との間の距離を示す、
    ことを特徴とする請求項8に記載の機械可読媒体。
  11. 第2の次の移動を決定することは、
    元の位置、車輪の動き、及び前記予測された横滑りを追加することにより、前記自律走行車の最終の位置を計算することを含む、
    ことを特徴とする請求項8に記載の機械可読媒体。
  12. 前記予測された横滑りは、前記物理モデルに基づいて計算された前記自律走行車の前記第1の移動を補正するために使用される、
    ことを特徴とする請求項8に記載の機械可読媒体。
  13. 前記運転シナリオは、前記自律走行車の回転のシナリオを含む、
    ことを特徴とする請求項8に記載の機械読取可能媒体。
  14. 前記所定のパラメータは、道路の種類、気象条件、前記自律走行車の速度、前記自律走行車の目標角度、前記自律走行車の加速度又は減速度、前記自律走行車のステアリング角及び前記自律走行車のステアリング角のうちの1つ以上を含む、
    ことを特徴とする請求項8に記載の機械読取可能媒体。
  15. プロセッサと、
    前記プロセッサに連結されてコマンドを記憶するメモリと、を含み、
    前記コマンドが前記プロセッサによって実行されるとき、前記プロセッサに、自律走行車を動作させる処理を実行させる、データ処理システムであって、
    前記処理は、
    次の移動に用いられる自律走行車の運転シナリオを認識し、前記運転シナリオは1つ以上の予め決められたパラメータのセットで表されることと、
    前記運転シナリオに対応する物理モデルを用いて、前記自律走行車の第1の次の移動を計算することと、
    予め決定されたパラメータのセットに横滑り予測モデルを適用して、前記運転シナリオが与えられる場合の前記自律走行車の横滑りを予測することと、
    前記自律走行車の前記第1の次の移動と、前記自律走行車により予測された横滑りとに基づいて、前記自律走行車の第2の次の移動を決定することと、
    前記第2の次の移動に基づいて、計画及び制御データを生成することと、
    前記計画及び制御データに基づいて前記自律走行車を制御し、走行させることと、を含む、
    ことを特徴とするデータ処理システム。
  16. 前記横滑り予測モデルは、複数の異なるタイプの車両により複数の運転シナリオにおいて測定して記録された横滑りと、対応する運転パラメータとに基づいて、機械学習によって生成される、
    ことを特徴とする請求項15に記載のシステム。
  17. 前記横滑りは、前記横滑りは、前記自律走行車の実際の位置と、前記自律走行車により前記物理モデルに基づいて計算された位置との間の距離を示す、
    ことを特徴とする請求項15に記載のシステム。
  18. 第2の次の移動を決定することは、
    元の位置、車輪の動き、及び前記予測された横滑りを追加することにより、前記自律走行車の最終の位置を計算することを含む、
    ことを特徴とする請求項15に記載のシステム。
  19. 前記予測された横滑りは、前記物理モデルに基づいて計算された前記自律走行車の前記第1の移動を補正するために使用される、
    ことを特徴とする請求項15に記載のシステム。
  20. 前記運転シナリオは、前記自律走行車の回転のシナリオを含む、
    ことを特徴とする請求項15に記載のシステム。
  21. 前記所定のパラメータは、道路の種類、気象条件、前記自律走行車の速度、前記自律走行車の目標角度、前記自律走行車の加速度又は減速度、前記自律走行車のステアリング角及び前記自律走行車のステアリング角のうちの1つ以上を含む、
    ことを特徴とする請求項15に記載のシステム。
JP2018517633A 2016-09-28 2017-01-18 自律走行車の移動をシミュレートするための物理モデル及び機械学習結合方法 Active JP6578439B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/278,719 2016-09-28
US15/278,719 US10343685B2 (en) 2016-09-28 2016-09-28 Physical model and machine learning combined method to simulate autonomous vehicle movement
PCT/US2017/013930 WO2018063428A1 (en) 2016-09-28 2017-01-18 A physical model and machine learning combined method to simulate autonomous vehicle movement

Publications (2)

Publication Number Publication Date
JP2019500256A true JP2019500256A (ja) 2019-01-10
JP6578439B2 JP6578439B2 (ja) 2019-09-18

Family

ID=61687551

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018517633A Active JP6578439B2 (ja) 2016-09-28 2017-01-18 自律走行車の移動をシミュレートするための物理モデル及び機械学習結合方法

Country Status (6)

Country Link
US (1) US10343685B2 (ja)
EP (1) EP3345086B1 (ja)
JP (1) JP6578439B2 (ja)
KR (1) KR102048646B1 (ja)
CN (1) CN108139884B (ja)
WO (1) WO2018063428A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020199925A1 (en) * 2019-03-29 2020-10-08 Ningbo Geely Automobile Research & Development Co., Ltd. A vehicle and a method of simulating a drifting/skidding movement of a vehicle
JP2021008267A (ja) * 2019-07-01 2021-01-28 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド 車両の動的パラメータテスト方法、装置、記憶媒体及び電子デバイス
JP7001795B1 (ja) 2020-11-13 2022-01-20 株式会社ネクスティエレクトロニクス シミュレーション用のデータ生成装置、方法及びコンピュータプログラム
KR20220085005A (ko) * 2020-12-14 2022-06-21 콘티넨탈 오토모티브 게엠베하 주행 지원 시스템을 이용해서 자동 주행 과정을 선택하기 위한 방법

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9789880B2 (en) 2016-03-03 2017-10-17 Uber Technologies, Inc. Sensory stimulation system for an autonomous vehicle
US10012990B2 (en) 2016-04-01 2018-07-03 Uber Technologies, Inc. Optimizing timing for configuring an autonomous vehicle
US10093252B2 (en) 2016-04-01 2018-10-09 Uber Technologies, Inc. Transport facilitation system for configuring a service vehicle for a user
US10255816B2 (en) 2016-04-27 2019-04-09 Uber Technologies, Inc. Transport vehicle configuration for impaired riders
US10019008B2 (en) * 2016-09-28 2018-07-10 Baidu Usa Llc Sideslip compensated control method for autonomous vehicles
US11112793B2 (en) 2017-08-28 2021-09-07 Motional Ad Llc Mixed-mode driving of a vehicle having autonomous driving capabilities
US11460842B2 (en) 2017-08-28 2022-10-04 Motional Ad Llc Mixed-mode driving of a vehicle having autonomous driving capabilities
US10739775B2 (en) * 2017-10-28 2020-08-11 Tusimple, Inc. System and method for real world autonomous vehicle trajectory simulation
US11086318B1 (en) 2018-03-21 2021-08-10 Uatc, Llc Systems and methods for a scenario tagger for autonomous vehicles
EP3659004B1 (en) * 2018-05-18 2021-07-07 Baidu.com Times Technology (Beijing) Co., Ltd. Drifting correction between planning stage and controlling stage of operating autonomous driving vehicles
US10457294B1 (en) * 2018-06-27 2019-10-29 Baidu Usa Llc Neural network based safety monitoring system for autonomous vehicles
CN110726564A (zh) * 2018-07-16 2020-01-24 北斗导航科技有限公司 一种模拟车辆自动驾驶的***及方法
CN108931927B (zh) * 2018-07-24 2019-07-30 百度在线网络技术(北京)有限公司 无人驾驶仿真场景的创建方法及装置
CN109159782B (zh) * 2018-08-21 2022-08-26 上海博泰悦臻网络技术服务有限公司 车辆的动力模式调节方法及服务器
US11126763B1 (en) 2018-08-22 2021-09-21 Waymo Llc Realism metric for testing software for controlling autonomous vehicles
US10788841B2 (en) * 2018-08-24 2020-09-29 Baidu Usa Llc Hardware centralized time synchronization hub for an autonomous driving vehicle
CN110893858B (zh) * 2018-09-12 2021-11-09 华为技术有限公司 一种智能驾驶方法及智能驾驶***
KR20200034037A (ko) * 2018-09-14 2020-03-31 현대자동차주식회사 차량의 주행 제어 장치 및 방법
KR102521657B1 (ko) * 2018-10-15 2023-04-14 삼성전자주식회사 차량을 제어하는 방법 및 장치
CN112868022A (zh) * 2018-10-16 2021-05-28 法弗人工智能有限公司 自动驾驶车辆的驾驶场景
KR102065693B1 (ko) * 2018-10-26 2020-01-13 인하대학교 산학협력단 자율주행 차량을 위한 기계학습 데이터 표준화 방법 및 시스템
US11648951B2 (en) 2018-10-29 2023-05-16 Motional Ad Llc Systems and methods for controlling actuators based on load characteristics and passenger comfort
WO2020097221A1 (en) 2018-11-08 2020-05-14 Evangelos Simoudis Systems and methods for managing vehicle data
US10814882B2 (en) * 2018-11-29 2020-10-27 Baidu Usa Llc Method to determine vehicle load of autonomous driving vehicle using predetermined load calibration tables
US10997729B2 (en) * 2018-11-30 2021-05-04 Baidu Usa Llc Real time object behavior prediction
US10852746B2 (en) * 2018-12-12 2020-12-01 Waymo Llc Detecting general road weather conditions
EP3698228B1 (en) * 2018-12-26 2022-09-28 Baidu.com Times Technology (Beijing) Co., Ltd. Optimal planner switch method for three point turn of autonomous driving vehicles
JP7086111B2 (ja) * 2019-01-30 2022-06-17 バイドゥドットコム タイムズ テクノロジー (ベイジン) カンパニー リミテッド 自動運転車のlidar測位に用いられるディープラーニングに基づく特徴抽出方法
DE102019212666A1 (de) 2019-03-15 2020-09-17 Volkswagen Aktiengesellschaft Steuerung eines autonomen oder teilautonomen Fahrzeugs
US11312372B2 (en) 2019-04-16 2022-04-26 Ford Global Technologies, Llc Vehicle path prediction
JP2020175886A (ja) * 2019-04-22 2020-10-29 株式会社デンソー 自動運転制御装置
US11472291B2 (en) 2019-04-25 2022-10-18 Motional Ad Llc Graphical user interface for display of autonomous vehicle behaviors
GB2607172B (en) * 2019-04-25 2023-11-01 Motional Ad Llc Graphical user interface for display of autonomous vehicle behaviors
CN110069887B (zh) * 2019-05-05 2022-04-15 腾讯科技(深圳)有限公司 一种驾驶仿真方法、装置、设备及存储介质
CN110155056B (zh) * 2019-05-07 2021-02-26 重庆工程职业技术学院 一种自动驾驶车辆的侧滑补偿方法及***
CN110118661B (zh) * 2019-05-09 2024-03-26 腾讯科技(深圳)有限公司 驾驶仿真场景的处理方法、装置及存储介质
US11338819B2 (en) * 2019-09-30 2022-05-24 Baidu Usa Llc Cloud-based vehicle calibration system for autonomous driving
US11269329B2 (en) * 2019-10-21 2022-03-08 Baidu Usa Llc Dynamic model with learning based localization correction system
CN111216713B (zh) * 2020-02-17 2022-06-10 哈尔滨工业大学 一种自动驾驶车辆速度预瞄控制方法
US20210342500A1 (en) * 2020-05-01 2021-11-04 Steering Solutions Ip Holding Corporation Systems and methods for vehicle modeling
JP7409222B2 (ja) * 2020-05-14 2024-01-09 マツダ株式会社 移動体の制御装置
US20230289623A1 (en) * 2020-08-20 2023-09-14 Hitachi Vantara Llc Systems and methods for an automated data science process
KR20220034299A (ko) 2020-09-10 2022-03-18 현대위아 주식회사 Awd 차량의 토크를 제어하는 장치 및 그의 동작 방법
US11731651B2 (en) * 2020-09-30 2023-08-22 Baidu Usa Llc Automatic parameter tuning framework for controllers used in autonomous driving vehicles
CN112885116B (zh) * 2021-01-25 2022-12-27 浙江公路水运工程咨询有限责任公司 一种高速公路雨雾场景车路协同诱导***
DE102021105174B3 (de) * 2021-03-04 2022-03-31 Dr. Ing. H.C. F. Porsche Aktiengesellschaft Verfahren und Vorrichtung zur Spurregelung eines Fahrzeugs
KR102648935B1 (ko) * 2021-10-27 2024-03-19 한국자동차연구원 자동차 동작 테스트 장치 및 그 방법
CN114348021B (zh) * 2022-01-05 2023-10-20 清华大学 基于强化学习的车辆自主极限驾驶规划控制方法及***
US11550851B1 (en) * 2022-02-10 2023-01-10 Motional Ad Llc Vehicle scenario mining for machine learning models
CN115352467A (zh) * 2022-08-30 2022-11-18 中汽创智科技有限公司 自动驾驶车辆的行驶控制方法、装置及设备
KR102576733B1 (ko) * 2022-11-30 2023-09-08 주식회사 모라이 관제 플랫폼 연동 vils 기반 교통 환경 재현 방법 및 시스템
CN116088520A (zh) * 2023-02-07 2023-05-09 睿羿科技(山东)有限公司 一种无人驾驶铰链车辆的精准方向控制方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012252406A (ja) * 2011-05-31 2012-12-20 Nissan Motor Co Ltd 道路形状予測装置
JP2014069766A (ja) * 2012-10-01 2014-04-21 Hitachi Automotive Systems Ltd 車両の運動制御装置
US20160075341A1 (en) * 2014-09-17 2016-03-17 Volvo Car Corporation Vehicle control through machine learining
JP2017074838A (ja) * 2015-10-14 2017-04-20 三菱電機株式会社 車両用操舵装置および車両用操舵方法
JP2017154554A (ja) * 2016-02-29 2017-09-07 トヨタ自動車株式会社 車両制御装置及び車両制御方法
JP2018024286A (ja) * 2016-08-08 2018-02-15 日立オートモティブシステムズ株式会社 自動運転装置

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2844240B2 (ja) * 1990-03-15 1999-01-06 本田技研工業株式会社 自動走行装置
JP2882232B2 (ja) 1993-03-17 1999-04-12 三菱自動車工業株式会社 車体重心スリップ角計測装置
US6308115B1 (en) 1998-07-29 2001-10-23 Kabushiki Kaisha Toyota Chuo Kenkyusho Vehicle running condition judgement device
JP2001255937A (ja) * 2000-03-10 2001-09-21 Toshiba Corp 車両用自動走行制御装置
US6681180B2 (en) 2001-01-29 2004-01-20 The Board Of Trustees Of The Leland Stanford Junior University Determination and control of vehicle sideslip using GPS
US6675074B2 (en) 2001-08-21 2004-01-06 Robert Bosch Gmbh Method and system for vehicle trajectory estimation
US6862506B2 (en) 2001-08-29 2005-03-01 Delphi Technologies, Inc. Method for automatically adjusting reference models in vehicle stability enhancement (VSE) systems
JP4389567B2 (ja) * 2003-12-03 2009-12-24 日産自動車株式会社 車線逸脱防止装置
US7689393B2 (en) * 2003-12-09 2010-03-30 Ford Motor Company Method and apparatus for controlling a vehicle computer model
US7689392B2 (en) 2003-12-09 2010-03-30 Ford Motor Company Method and apparatus for controlling a vehicle computer model
FR2864001B1 (fr) * 2003-12-18 2007-11-23 Renault Sas Procede et systeme de commande du braquage de roue arriere directrice et vehicule correspondant
US7130729B2 (en) 2004-07-26 2006-10-31 General Motors Corporation Adaptive compensation of rear-wheel steering control using vehicle dynamics parameter estimation
US7440824B2 (en) 2005-11-16 2008-10-21 Gm Global Technology Operations, Inc. Vehicle stability control with lateral dynamics feedback
US7537293B2 (en) 2005-12-22 2009-05-26 Gm Global Technology Operations, Inc. Vehicle stability enhancement control adaptation to driving skill
JP4835189B2 (ja) * 2006-02-16 2011-12-14 日産自動車株式会社 旋回挙動制御装置、自動車、及び旋回挙動制御方法
US7599774B2 (en) 2006-03-10 2009-10-06 Gm Global Technology Operations, Inc. Method and system for adaptively compensating closed-loop front-wheel steering control
US7751960B2 (en) 2006-04-13 2010-07-06 Gm Global Technology Operations, Inc. Driver workload-based vehicle stability enhancement control
US7970512B2 (en) * 2006-08-30 2011-06-28 Ford Global Technologies Integrated control system for stability control of yaw, roll and lateral motion of a driving vehicle using an integrated sensing system with pitch information
ES2370806T3 (es) * 2007-02-12 2011-12-22 Saab Ab Sistema de control de un vehículo y procedimiento que usa la asignación de control y la compensación de fase.
JP2009035120A (ja) * 2007-08-01 2009-02-19 Bridgestone Corp 車両制御装置
US8170767B2 (en) * 2007-10-30 2012-05-01 Ford Global Technologies, Llc Vehicle stability control system and method
US8180513B2 (en) 2008-05-05 2012-05-15 Southwest Research Institute Autonomous ground vehicle control system for high-speed and safe operation
DE102008040713B4 (de) * 2008-07-25 2018-10-25 Robert Bosch Gmbh Verfahren und Vorrichtung zur Betätigung eines aktiven und/oder passiven Sicherheitssystems in einem Kraftfahrzeug
US8126642B2 (en) * 2008-10-24 2012-02-28 Gray & Company, Inc. Control and systems for autonomously driven vehicles
US7908112B2 (en) 2008-11-24 2011-03-15 GM Global Technology Operations LLC Dynamic observer for the estimation of vehicle lateral velocity
JP4842335B2 (ja) * 2009-02-12 2011-12-21 日立建機株式会社 電動車両の旋回補助装置
US20100209889A1 (en) 2009-02-18 2010-08-19 Gm Global Technology Operations, Inc. Vehicle stability enhancement control adaptation to driving skill based on multiple types of maneuvers
WO2010101749A1 (en) * 2009-03-05 2010-09-10 Massachusetts Institute Of Technology Predictive semi-autonomous vehicle navigation system
JP4918148B2 (ja) 2010-03-05 2012-04-18 本田技研工業株式会社 車両の運動制御装置
GB2492543B (en) * 2011-06-30 2013-07-03 Land Rover Uk Ltd A vehicle sideslip control system and method
US20130000092A1 (en) 2011-06-30 2013-01-03 Ramadev Burigsay Hukkeri Vehicle model calibration system for a mobile machine
US20130238181A1 (en) 2012-03-12 2013-09-12 Toyota Motor Eng. & Man. North America (Tema) On-board vehicle path prediction using processed sensor information
US8457827B1 (en) 2012-03-15 2013-06-04 Google Inc. Modifying behavior of autonomous vehicle based on predicted behavior of other vehicles
US9008886B2 (en) * 2012-12-12 2015-04-14 Caterpillar Inc. Method of modifying a worksite
US9045041B2 (en) * 2013-02-27 2015-06-02 Here Global B.V. Driver behavior from probe data for augmenting a data model
GB2512287B (en) 2013-03-22 2015-06-03 Jaguar Land Rover Ltd Improvements in vehicle steering
DE102013013867A1 (de) * 2013-08-20 2015-03-12 Audi Ag Kraftfahrzeug und Verfahren zur Steuerung eines Kraftfahrzeugs
DE102013019112B4 (de) * 2013-11-15 2021-10-14 Audi Ag Kraftfahrzeug mit Spurverlaufserkennung für die Fahrerassistenz
US9165477B2 (en) 2013-12-06 2015-10-20 Vehicle Data Science Corporation Systems and methods for building road models, driver models, and vehicle models and making predictions therefrom
CN103745241A (zh) * 2014-01-14 2014-04-23 浪潮电子信息产业股份有限公司 一种基于自学习算法的智能驾驶方法
US9233692B2 (en) 2014-03-10 2016-01-12 GM Global Technology Operations LLC Method to control a vehicle path during autonomous braking
WO2016020834A1 (en) 2014-08-04 2016-02-11 Modelway S.R.L. A method for estimating variables affecting the vehicle dynamics and corresponding virtual sensor
CN104462716B (zh) * 2014-12-23 2017-10-27 北京理工大学 一种基于人‑车‑路模型的脑‑控车辆的脑‑机接口参数和动力学参数设计方法
US10552573B2 (en) 2016-03-18 2020-02-04 Toyota Jidosha Kabushiki Kaisha Vehicle simulation device for crowd-sourced vehicle simulation data
US9796421B1 (en) * 2016-04-07 2017-10-24 GM Global Technology Operations LLC Autonomous vehicle lateral control for path tracking and stability

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012252406A (ja) * 2011-05-31 2012-12-20 Nissan Motor Co Ltd 道路形状予測装置
JP2014069766A (ja) * 2012-10-01 2014-04-21 Hitachi Automotive Systems Ltd 車両の運動制御装置
US20160075341A1 (en) * 2014-09-17 2016-03-17 Volvo Car Corporation Vehicle control through machine learining
JP2017074838A (ja) * 2015-10-14 2017-04-20 三菱電機株式会社 車両用操舵装置および車両用操舵方法
JP2017154554A (ja) * 2016-02-29 2017-09-07 トヨタ自動車株式会社 車両制御装置及び車両制御方法
JP2018024286A (ja) * 2016-08-08 2018-02-15 日立オートモティブシステムズ株式会社 自動運転装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020199925A1 (en) * 2019-03-29 2020-10-08 Ningbo Geely Automobile Research & Development Co., Ltd. A vehicle and a method of simulating a drifting/skidding movement of a vehicle
US11964695B2 (en) 2019-03-29 2024-04-23 Ningbo Geely Automobile Research &Dev. Co., Ltd. Vehicle and a method of simulating a drifting/skidding movement of a vehicle
JP2021008267A (ja) * 2019-07-01 2021-01-28 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド 車両の動的パラメータテスト方法、装置、記憶媒体及び電子デバイス
US11634148B2 (en) 2019-07-01 2023-04-25 Apollo Intelligent Driving Technology (Beijing) Co., Ltd. Method, apparatus, storage medium and electronic device for testing dynamic parameter of vehicle
JP7001795B1 (ja) 2020-11-13 2022-01-20 株式会社ネクスティエレクトロニクス シミュレーション用のデータ生成装置、方法及びコンピュータプログラム
JP2022078409A (ja) * 2020-11-13 2022-05-25 株式会社ネクスティエレクトロニクス シミュレーション用のデータ生成装置、方法及びコンピュータプログラム
KR20220085005A (ko) * 2020-12-14 2022-06-21 콘티넨탈 오토모티브 게엠베하 주행 지원 시스템을 이용해서 자동 주행 과정을 선택하기 위한 방법
KR102633251B1 (ko) 2020-12-14 2024-02-02 콘티넨탈 오토모티브 게엠베하 주행 지원 시스템을 이용해서 자동 주행 과정을 선택하기 위한 방법

Also Published As

Publication number Publication date
CN108139884B (zh) 2022-07-29
EP3345086B1 (en) 2019-11-20
WO2018063428A1 (en) 2018-04-05
KR20180050383A (ko) 2018-05-14
KR102048646B1 (ko) 2019-11-25
EP3345086A4 (en) 2018-10-31
EP3345086A1 (en) 2018-07-11
CN108139884A (zh) 2018-06-08
US20180086344A1 (en) 2018-03-29
US10343685B2 (en) 2019-07-09
JP6578439B2 (ja) 2019-09-18

Similar Documents

Publication Publication Date Title
JP6578439B2 (ja) 自律走行車の移動をシミュレートするための物理モデル及び機械学習結合方法
JP6650028B2 (ja) 自律走行車のための横滑り補償制御方法
KR102062608B1 (ko) 자율 주행 차량의 제어 피드백에 기초한 맵 업데이트 방법 및 시스템
JP6619778B2 (ja) 自律走行車の車両交通行動を予測して運転決定をするための方法及びシステム
KR102078488B1 (ko) 차량 주변의 컨텍스트에 기초하여 차량의 하나 이상의 궤적을 예측하는 방법 및 시스템
JP6799592B2 (ja) 自律走行車を完全に停止させるための速度制御
KR102020163B1 (ko) 자율 주행 차량의 조향률의 동적 조정
JP6494715B2 (ja) 自律走行車の速度制御率の動的調整方法
JP6578331B2 (ja) 自律走行車のコマンド遅延を決定するための方法
KR101975725B1 (ko) 학습 기반 모델 예측 제어를 이용한 자율 주행 차량의 노면 마찰 결정 방법 및 시스템
JP2020514145A (ja) シミュレーションに基づく自動運転車の感知要求の評価方法
JP2018063703A (ja) 自律走行車用のグループ運転スタイル学習フレーム
JP2019503294A (ja) 自律走行車を制御するためのシステム遅延推定方法
JP2018535872A (ja) 自律走行車に用いられるシステム遅延補正の制御方法
JP2018531385A6 (ja) 自律走行車を運行させるための制御エラー補正計画方法
JP2018116705A (ja) ブレーキライトを利用して自動運転車両と追従車両との間の距離を保持する方法
JP2019503523A (ja) 自律走行車のための車両の位置点の配信方法
JP2019501809A (ja) 自律走行車の速度を追従する方法及びシステム
JP7017582B2 (ja) 自動運転車のトルクフィードバックに基づく車両縦方向自動キャリブレーションシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180405

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180424

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180405

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190516

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190730

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190826

R150 Certificate of patent or registration of utility model

Ref document number: 6578439

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250