JP2022058566A - 自律走行車両用動的モデル評価パッケージ - Google Patents

自律走行車両用動的モデル評価パッケージ Download PDF

Info

Publication number
JP2022058566A
JP2022058566A JP2022002719A JP2022002719A JP2022058566A JP 2022058566 A JP2022058566 A JP 2022058566A JP 2022002719 A JP2022002719 A JP 2022002719A JP 2022002719 A JP2022002719 A JP 2022002719A JP 2022058566 A JP2022058566 A JP 2022058566A
Authority
JP
Japan
Prior art keywords
trajectory
time points
adv
simulated
locus
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
JP2022002719A
Other languages
English (en)
Other versions
JP7345577B2 (ja
Inventor
シュー・ジィァン
Jiang Shu
ユー・ツァオ
Yu Cao
チー・ルオ
Qi Luo
ユー・ワン
Yu Wang
ウェイマン・リン
Lin Weiman
ロンタオ・リン
Longtao Lin
ジンハオ・ミャオ
Jinghao Miao
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 JP2022058566A publication Critical patent/JP2022058566A/ja
Application granted granted Critical
Publication of JP7345577B2 publication Critical patent/JP7345577B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0234Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
    • G05D1/0236Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • 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
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/005Handover processes
    • B60W60/0051Handover processes from occupants to 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
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/04Conjoint control of vehicle sub-units of different type or different function including control of propulsion units
    • B60W10/06Conjoint control of vehicle sub-units of different type or different function including control of propulsion units including control of combustion engines
    • 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
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/18Conjoint control of vehicle sub-units of different type or different function including control of braking systems
    • 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
    • B60W10/00Conjoint control of vehicle sub-units of different type or different function
    • B60W10/20Conjoint control of vehicle sub-units of different type or different function including control of steering systems
    • 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, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/18Propelling the vehicle
    • B60W30/18009Propelling the vehicle related to particular drive situations
    • B60W30/18109Braking
    • 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
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/001Planning or execution of driving tasks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • 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
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • 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
    • B60W2420/408
    • 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
    • B60W2510/00Input parameters relating to a particular sub-units
    • B60W2510/06Combustion engines, Gas turbines
    • B60W2510/0604Throttle position
    • 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

Abstract

【課題】制御命令下でADVの挙動をシミュレートするときに、ADVの軌跡の予測における動的モデルの正確度を評価するための性能メトリクスが開示される。【解決手段】性能メトリクスは、同一の制御命令が与えられたときに、動的モデルの予測された軌跡と、車両の実際の軌跡との間の類似度を示すことができる。性能メトリクスは、グランドトゥルースに基づき、実際の軌跡からの、動的モデルの予測された軌跡の偏差を測定する。性能メトリクスは、累積又は平均絶対軌跡誤差、エンドポーズ差(ED)、2シグマ欠陥率(ε2σ)、ハウスドルフ距離(HAU)、最長共通部分列誤差(LCSS)、及び動的時間伸縮法(DTW)を含むことができる。2シグマ欠陥率は、軌跡における点の総数に亘って予測された位置誤差の2σ範囲外の真の位置誤差を有する点の数の比率を表す。【選択図】図10

Description

本開示の実施形態は、一般に、自律車両を操作することに関する。より詳細には、本開示の実施形態は、自律走行車両(autonomous driving vehicles)(ADVs)の挙動を模倣するために使用されるシミュレーションの正確度を評価するための方法に関する。
自律モード(例えば、ドライバーレス)で動作する車両は、乗員、特に運転者の、運転に関連する責任の一部を軽減することができる。自律モードで動作すると、車両は、車載センサを用いて様々な場所を運行することができ、人間の干渉を最小限にして、ある場合には、乗員がいない状態で、車両を走行させることができる。
動作計画及び制御は、自律走行において重要なオペレーションである。動作計画及び制御オペレーションの安全性、正確度、及び効率性は、ADVの能力、即ち、他の車両又は歩行者などの移動障害物の動きを検知及び予測する能力、並びに非移動物体を認識する能力に依存する。カメラ、光による検知と測距(LIDAR)ユニット、レーダなどのセンサを用いて、車両周囲の環境のビデオ及び電磁画像を捕捉する。ADVは、センサによって捕捉された情報を処理して、ADVの動作の計画及び制御のための、ADVを取り巻く障害物、交通要素、及び道路の特徴などの走行環境を感知することができる。
計画及び制御の各システムの開発を加速させるために、コントロール-イン-ザ-ループシミュレータ(control-in-the-loop simulator)を用いて、ADVの動的挙動、並びに他の車両、歩行者、物体、及び周囲環境との相互作用を、忠実度の高い走行シナリオで模倣することができる。ADVの実際の道路での結果を正確に予測する、ADVの動作及び軌跡の動的モデルは、計画及び制御の各システムの車中(onboard)試験、開発、及び評価に要する時間を著しく短縮することができる。以上から、動的モデルの正確度を評価する技術が必要とされている。
本開示の一態様は、自律走行車両(ADV)の挙動をシミュレートするために使用される動的シミュレータの性能を評価するための、コンピュータで実行される方法であって、前記動的シミュレータによって、前記ADVの複数の時点での複数の状態、及び前記複数の時点で前記ADVに与えられる複数の制御命令を受け取ることと、前記動的シミュレータによって、前記複数の状態及び前記複数の制御命令に基づいて、前記ADVのシミュレートされた軌跡の複数の予測された位置を生成することと、前記複数の時点で前記ADVに前記制御命令を与えることによって生成される、前記ADVのグランドトゥルースの軌跡の複数の実際の位置を受け取ることと、前記シミュレートされた軌跡の前記複数の予測された位置と、前記複数の時点での前記グランドトゥルースの軌跡の前記複数の実際の位置との間の類似度を測定する評価メトリクスを生成することとを含む。
本開示の実施形態は、一例として記載され、添付図面の図に限定されない。添付図面において、同一の参照番号は同様の要素を示す。
図1は、一実施形態に係るネットワークシステムを示すブロック図である。
図2は、一実施形態に係る自律車両で用いられる検知システム及び制御システムの例を示すブロック図である。
図3Aは、一実施形態に係る自律車両で用いられる感知及び計画システムの例を示すブロック図である。 図3Bは、一実施形態に係る自律車両で用いられる感知及び計画システムの例を示すブロック図である。
図4は、一実施形態に係る自律走行車両のアーキテクチャを示すブロック図である。
図5は、実施形態に係る例示的な動的モデルを示す。
図6は、実施形態に係る、図5に示される動的モデルを訓練するための例示的なシステム600を示す。
図7は、実施形態に係る動的モデルを訓練する例示的なフロー図を示す。
図8は、一実施形態に係る車両の動的挙動をシミュレートするための、自律車両の感知及び計画システム並びに制御モジュールと統合されたコントロール-イン-ザ-ループシミュレーションの例を示すブロック図である。
図9は、一実施形態に係る動的モデルの性能を評価する例示的なオペレーションを示す。
図10は、一実施形態に係る動的モデルの性能を評価するためのプロセスの例を示すフロー図である。
詳細な説明
本開示の様々な実施形態及び態様は、以下で論じられる詳細を参照して説明され、添付図面は、これらの様々な実施形態を示す。以下の説明及び図面は、本開示の例示であって、本開示を限定するものと解釈されるべきではない。多くの具体的な詳細が、本開示の様々な実施形態の十分な理解を提供するために記載される。しかし、特定の例において、本開示の実施形態の簡潔な議論を提供するために、周知の又は従来の詳細は記載しない。
本明細書における「一実施形態」又は「実施形態」の表現は、実施形態に関連して説明される具体的な特徴、構造、又は特性が、本開示の少なくとも1つの実施形態に含まれ得ることを意味する。本明細書の様々な箇所にみられる「一実施形態では」という表現は、必ずしも全てが同一の実施形態を意味するとは限らない。
ADVの動作計画及び制御は、センサによって捕捉された情報を処理して、ADVの動作の計画及び制御のための、ADVを取り巻く物体、障害物、交通要素、及び道路の特徴などの走行環境を感知することができる。動作計画及び制御オペレーションからの制御命令は、ADVのスロットル、ステアリング、及びブレーキなどのアクチュエータに所定の動作を行うように命令し、走行環境下、ADVを安全に運行させる。動的モデルを用い、制御命令に基づいてADVの位置、動作、又は軌跡をモデル化するコントロール-イン-ザ-ループシミュレータを用いて、忠実度の高い走行シナリオで、計画及び制御の各オペレーションを開発、訓練、評価、及び検証することができ、現実世界での車中試験の必要性を低減する。ADVの実際の挙動に関する動的モデルのシミュレートされた又は予測された出力の正確度を評価することにより、動的モデルの性能を評価することができる。次いで、動的モデルを微調整することにより、コントロール-イン-ザ-ループシミュレータにおいて、ADVの挙動をより正確に予測することができる。
動作計画及び制御オペレーションの命令下でADVの挙動をシミュレートするときに、ADVの軌跡の予測における動的モデルの正確度を評価するための性能メトリクスが開示される。性能メトリクスは、動作計画及び制御オペレーションから同一の制御命令が与えられたときに、動的モデルの予測された軌跡と車両の実際の軌跡との間の類似度、又は反対に誤差の程度を示すことができる。車両の実際の軌跡は、現実世界の走行シナリオ下で車中試験中に記録される、車両のセンサによって測定されたグランドトゥルースになり得る。動的モデルへの入力は、車両の状態、及び車中試験中に同時に記録される車両の制御命令であることができる。一実施形態では、車両の状態は、特定の時点での、車両の速度、加速度、及び角速度を含む。制御命令は、スロットル命令、ブレーキ命令、又はステアリング命令であることができる。性能メトリクスは、長距離街路走行シナリオなどの、共通の走行動作及びシナリオ下で生成され得る。
一実施形態では、性能メトリクスは、グランドトゥルースに基づき、実際の軌跡からの、動的モデルの予測された軌跡の偏差を評価するメトリクスを含むことができる。性能メトリクスは、累積絶対軌跡誤差(cumulative absolute trajectory error)又は平均絶対軌跡誤差(mean absolute trajectory error)、エンドポーズ差(end-pose difference)(ED)、2シグマ欠陥率(two-sigma defect rate)、ハウスドルフ距離(Hausdirff Distance)(HAU)、最長共通部分列誤差(longest common sub-sequence error)(LCSS)、及び動的時間伸縮法(dynamic time warping)(DTW)を含むことができる。
一実施形態では、ADVの挙動をシミュレートするために使用される動的モデルの性能を評価するための方法が開示される。前記方法は、動的モデルによって、いくつかの時点におけるADVの一組の状態と、対応する時点におけるADVに与えられる一組の制御命令とを受け取ることを含む。前記方法は、また、動的モデルによって、前記一組の状態及び前記一組の制御命令に基づき、ADVのシミュレートされた軌跡の一組の予測された位置を生成することを含む。前記方法は、更に、ADVのグランドトゥルースの軌跡の一組の実際の位置を受け取ることを含む。実際の位置は、対応する時点で、ADVに制御命令を与えることによって生成される。前記方法は、更に、対応する時点での、前記シミュレートされた軌跡の一組の予測された位置と、前記グランドトゥルースの軌跡の一組の実際の位置との間の類似度を測定する評価メトリクスを生成することを含む。
図1は、本開示の一実施形態に係る自律車両ネットワーク構成を示すブロック図である。図1を参照すると、ネットワーク構成100は、ネットワーク102を介して、1以上のサーバ103~104に通信可能に接続され得る自律車両101を含む。1つの自律車両が図示されているが、複数の自律車両を相互に接続することができ、及び/又はネットワーク102を介して、サーバ103~104に接続することができる。ネットワーク102は、任意のタイプのネットワークであることができ、例えば、ローカルエリアネットワーク(LAN)、インターネットなどのワイドエリアネットワーク(WAN)、セルラーネットワーク、サテライトネットワーク、又はそれらの有線若しくは無線での組合せが挙げられる。サーバ103~104は、任意の種類のサーバ又は一群のサーバであることができ、例えば、Web又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ、又はそれらの組合せが挙げられる。サーバ103~104は、データアナリティクスサーバ、コンテンツサーバ、交通情報サーバ、マップ及び関心のある地点(map and point of interest)(MPOI)サーバ、又はロケーションサーバなどであることができる。
自律車両は、自律モードで走行するように構成することができる車両を意味し、自律モードでは、前記車両は、運転者からの入力が殆どない又は全くない状態で、環境を運行する。係る自律車両は、車両が走行する環境に関する情報を検出するように構成された1以上のセンサを有する検知システムを含むことができる。前記車両及びその関連するコントローラは、検出された情報を用いて、環境を運行する。自律車両101は、マニュアルモード、完全自律モード、又は一部自律モードで運行することができる。
一実施形態では、自律車両101は、感知及び計画システム110、車両制御システム111、無線通信システム112、ユーザインターフェースシステム113、及び検知システム115を含むが、これらに限定されない。自律車両101は、更に、通常車両に含まれる特定の共通コンポーネント、例えば、エンジン、ホイール、ステアリングホイール、トランミッションなどを含むことができ、これらは、各種の通信信号及び/又は命令、例えば、加速信号又は命令、減速信号又は命令、ステアリング信号又は命令、ブレーキ信号又は命令などを用いて、車両制御システム111及び/又は感知及び計画システム110によって制御することができる。
コンポーネント110~113及び115は、インターコネクト、バス、ネットワーク、又はそれらの組合せを介して、通信可能に相互接続できる。例えば、コンポーネント110~113及び115は、コントローラエリアネットワーク(CAN)バスを介して、通信可能に相互接続できる。CANバスは、マイクロコントローラ及びデバイスが、ホストコンピュータがない各種用途で相互通信できるように設計された車両バススタンダードである。これは、メッセージベースのプロトコルであり、元来、自動車内部の多重電気配線用に設計されたが、その他の多くの用途でも用いられる。
続いて図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を含むが、これらに限定されない。ステアリングユニット201は、車両の方向又は進行を調節する。スロットルユニット202は、モータ又はエンジンの速度を制御し、延いては、車両の速度及び加速度を制御する。ブレーキユニット203は、摩擦を与えて、車両のホイール又はタイヤの動きを緩めることによって、車両を減速させる。なお、図2に示される各コンポーネントは、ハードウェア、ソフトウェア、又はこれらの組合せで実行させることができる。
図1を再度参照すると、無線通信システム112は、自律走行車両101と、外部システム、例えば、デバイス、センサ、他の車両などとの間の通信を可能にするように構成される。例えば、無線通信システム112は、1以上のデバイスと直接、又は通信ネットワーク、例えば、ネットワーク102を介するサーバ103~104などを介して無線通信することができる。無線通信システム112は、任意のセルラー通信ネットワーク、又は例えばWiFiを用いる無線ローカルエリアネットワーク(WLAN)を用いて、別のコンポーネント又はシステムと通信することができる。無線通信システム112は、例えば、赤外リンク、Bluetoothなどを用いて、装置(例えば、自律走行車両101内の乗員のモバイル装置、表示装置、スピーカ)と直接通信することができる。ユーザインターフェースシステム113は、自律走行車両101内に実装される周辺装置の一部であることができ、例えば、キーボード、タッチスクリーンディスプレイ、マイクロフォン、及びスピーカなどが挙げられる。
自律走行車両101の機能の一部又は全部を、特に、自律走行モードで運行するときに、感知及び計画システム110によって制御又は管理することができる。感知及び計画システム110は、必要なハードウェア(例えば、プロセッサ、メモリ、ストレージ)及びソフトウェア(例えば、オペレーティングシステム、計画及びルーティングプログラム)を含み、検知システム115、制御システム111、無線通信システム112、及び/又はユーザインターフェースシステム113から情報を受け取り、受け取った情報を処理し、出発点から目的地点までのルート又は経路を計画し、次いで、計画及び制御情報に基づいて車両101を走行させる。或いは、感知及び計画システム110を、車両制御システム111と統合させてもよい。
例えば、乗員としてのユーザが、移動の出発地と目的地を、例えば、ユーザインターフェースを介して指定することができる。感知及び計画システム110は、移動に関連するデータを取得する。例えば、感知及び計画システム110は、サーバ103~104の一部であり得るMPOIサーバからロケーション及びルート情報を取得することができる。ロケーションサーバは、ロケーションサービスを提供し、MPOIサーバは、マップサービス及び特定の場所のPOIを提供する。或いは、係るロケーション及びMPOI情報を、感知及び計画システム110の永久記憶装置にローカルで記憶させてもよい。一実施形態では、ロケーション及びMPOI情報は、サーバ103~104からダウンロードしたHDマップから取得することができる。
自律走行車両101がルートに沿って移動している間、感知及び計画システム110は、また、交通情報システム又はサーバ(TIS)からリアルタイムの交通情報を取得することができる。なお、サーバ103~104は、第三者によって操作されてもよく、例えば、感知及び計画システム110がルートを計画するために、感知及び計画システム110に出発位置と目的位置をダウンロードするサービスプロバイダによって操作されてもよい。第三者は、また、感知及び計画システム110に命令を発し、自律走行車両101に、計画されたルートで走行を開始するように命令することができる。或いは、サーバ103~104の機能を、感知及び計画システム110と統合することができる。リアルタイムの交通情報、MPOI情報、及びロケーション情報、並びに検知システム115によって検出又は検知されるリアルタイムのローカル環境データ(例えば、障害物、物体、近くの車両)に基づいて、感知及び計画システム110は、最適なルートを計画することができ、自律走行車両101を、例えば、制御システム111を介して、計画されたルートにしたがって走行させ、指定された目的地に安全且つ効率的に到達させることができる。
サーバ103は、様々なクライアントのためにデータアナリティクスサービスを行うデータアナリティクスシステムであることができる。一実施形態では、データアナリティクスシステム103は、データコレクタ121及び機械学習エンジン122を含む。データコレクタ121は、各種車両、即ち、自律車両又は人間の運転者によって走行される通常車両から走行統計123を収集する。走行統計123は、発せられた走行命令(例えば、スロットル、ブレーキ、ステアリングの各命令)及び様々な時点で車両のセンサによって捕捉された車両の応答(例えば、速度、加速度、減速度、方向、角速度)を示す情報を含む。一態様では、走行シナリオで捕捉された自律走行車両101の走行命令及び状態が動的モデルへの入力として用いられ、コントロール-イン-ザ-ループシミュレーションにおいて、自律走行車両101の挙動をシミュレートすることができる。自律走行車両101のシミュレートされた位置を表す動的モデルからの出力を、検知システム115によって捕捉された実際の位置又はグランドトゥルース値と比較して、以下に記載するように、動的モデルの性能を評価するメトリクスを生成することができる。走行統計123は、更に、様々な時点での走行環境を記述する情報、例えば、ルート(出発地と目的地を含む)、MPOI、道路状況、天候状況などを含むことができる。走行統計123は、更に、車両の位置及び向きを記述する、IMU及びGPSによって捕捉された姿勢を含むことができる。
走行統計123に基づいて、機械学習エンジン122は、各種目的のために、一組のルール、アルゴリズム、及び/又は予測モデル124を生成又は訓練する。例えば、機械学習エンジン122は、動的モデルを訓練することができる。自動動的モデル訓練モデルをサーバ103に設けて、走行統計123からの訓練データの抽出及び抽出された走行統計を用いる動的モデルの訓練を制御することができる。一実施形態では、アルゴリズム124は、深層学習ニューラルネットワークモデルを含むことができ、これは、自律走行車両101の環境における他の車両の軌跡を予測するために用いられ、感知及び計画システム110が、自律走行車両101と他の車両との衝突を避けるように自律走行車両101を運行させることを可能にする。
アルゴリズム124は、ADVにアップロードして、自律走行中にリアルタイムで利用することができる、又はサーバ103の障害物追跡エンジン125などの他のモジュールによって利用することができる。一実施形態では、障害物追跡エンジン125は、自律走行車両101を取り巻く車両又は歩行者などの移動障害物の短期間の動き又は軌跡を、移動障害物の過去の軌跡及び移動障害物が動く環境に基づいて予測することができる。障害物追跡エンジン125は、サーバ103の一部として示されているが、いくつかの実施形態では、エンジン125は、サーバ104の一部であってもよい。
図3A及び図3Bは、一実施形態に係る自律車両で使用される感知及び計画システムの例を示すブロック図である。システム300は、図1の自律走行車両101の一部として実行させることができ、感知及び計画システム110、制御システム111、及び検知システム115を含むが、これらに限定されない。図3A及び図3Bを参照すると、感知及び計画システム110は、ローカリゼーションモジュール301、感知モジュール302、予測モジュール303、決定モジュール304、計画モジュール305、制御モジュール306、ルート決定モジュール307、及びデータコレクタ308を含むが、これらに限定されない。
モジュール301~308の一部又は全部を、ソフトウェア、ハードウェア、又はこれらの組合せで実行させることができる。例えば、これらのモジュールを、永久記憶装置352にインストールし、メモリ351にロードし、1以上のプロセッサ(図示せず)によって実行させることができる。或いは、係るコンポーネントを、専用ハードウェアにプログラムされた又は埋め込まれた実行可能コードとして実装することができる。この専用ハードウェアとしては、例えば、集積回路(例えば、特定用途向けIC、即ち、ASIC)、デジタル信号プロセッサ(DSP)、又はフィールドプログラマブルゲートアレイ(FPGA)が挙げられ、これらは、対応するドライバ及び/又はアプリケーションからのオペレーティングシステムを介してアクセスすることができる。更に、係るコンポーネントは、1以上の特定の命令を介してソフトウェアコンポーネントによってアクセス可能な命令セットの一部としてのプロセッサ又はプロセッサコア内の特定のハードウェアロジックとして実装することができる。なお、これらのモジュールの一部又は全部を、図2の車両制御システム111の一部又は全部のモジュールに通信可能に接続又は統合することができる。モジュール301~308の一部は、統合モジュールとして互いに統合することができる。例えば、決定モジュール304と計画モジュール305を、単一のモジュールとして統合することができる。
ローカリゼーションモジュール301は、自律車両300の現在地を特定し(例えば、レバレッジングGPSユニット212)、ユーザの移動又はルートに関連するデータを管理する。ローカリゼーションモジュール301(マップ及びルートモジュールとも称される)は、ユーザの移動又はルートに関連するデータを管理する。ユーザは、ログインし、例えば、ユーザインターフェースを介して、移動の出発地と目的地を指定することができる。ローカリゼーションモジュール301は、自律車両300の他のコンポーネント、例えば、マップ及びルート情報311と通信して、移動に関連するデータを取得する。例えば、ローカリゼーションモジュール301は、ロケーションサーバ、並びにマップ及びPOI(MPOI)サーバからロケーション及びルート情報を取得することができる。ロケーションサーバは、ロケーションサービスを提供し、MPOIサーバは、マップサービス及び特定の場所のPOIを提供し、これらを、マップ及びルート情報311の一部として記憶させてもよい。一実施形態では、マップ及びルート情報311は、HDマップであることができる。HDマップは、ロケーションサーバ及びMPOIサーバからダウンロードすることができる。自律車両300がルートに沿って移動している間、ローカリゼーションモジュール301は、また、交通情報システム又はサーバからリアルタイムの交通情報を取得することができる。
検知システム115によって提供された検知データ及びローカリゼーションモジュール301によって得られたローカリゼーション情報に基づき、周囲環境の感知が、感知モジュール302によって決定される。感知情報は、通常の運転者が感知するであろう、運転車両の周囲のものを表し得る。感知は、車線構成、交通信号機、別車両の相対位置、歩行者、建造物、横断歩道、又は他の交通に関する標識(例えば、停止の標識、道を譲れの標識)などを、例えば、物体の形態で含むことができる。車線構成は、1以上の車線を記述する情報、例えば、車線の形状(例えば、直線又は曲率)、車線の幅、1つの道路にいくつの車線があるか、一方通行又は対面通行の車線、合流又は分岐車線、出口車線などを含む。
感知モジュール302は、自律走行車両101の環境における物体及び/又は特徴を特定するために、コンピュータビジョンシステム又はコンピュータビジョンシステムの機能を含み、1以上のカメラによって捕捉された画像を処理及び分析することができる。前記物体は、交通信号、車道の境界、他の車両、歩行者、及び/又は障害物などを含むことができる。コンピュータビジョンシステムは、物体認識アルゴリズム、ビデオトラッキング、及び他のコンピュータビジョン技術を用いることができる。いくつかの実施形態では、コンピュータビジョンシステムは、環境のマッピング、物体の追跡、物体の速度の推定などを行うことができる。感知モジュール302は、また、レーダ及び/又はLIDARなどの他のセンサによって提供された他の検知データに基づき、物体を検出することができる。一実施形態では、感知モジュール302は、自律走行車両101の環境における他の車両又は歩行者の現在地、現在の進行方向、及び過去の軌跡を示す画像マップを生成することができる。
各物体について、予測モジュール303は、特定状況下で、物体がどのように振る舞うかを予測する。予測は、感知データに基づいて行われ、一組のマップ/ルート情報311及び交通ルール312を考慮して、特定の時点における走行環境を感知する。例えば、物体が対向方向の車両であり、現在の走行環境が交差点を含む場合、予測モジュール303は、その車両が、直進するか曲がるかを予測する。感知データが、交差点に交通信号機がないことを示す場合、予測モジュール303は、その車両が、交差点の前で完全に停止する必要があり得ることを予測することができる。感知データが、その車両が、現在、左折のみの車線又は右折のみの車線を走行していることを示す場合、予測モジュール303は、その車両が、左折するか右折するかを予測することができる。
各物体について、決定モジュール304は、物体の扱い方に関する決定を行う。例えば、特定の物体(例えば、交差ルートにおける別車両)及び物体を記述するそのメタデータ(例えば、速度、方向、曲がり角度)について、決定モジュール304は、物体との遭遇の仕方(例えば、追い越し、道路の譲り、停止、通過)を決定する。決定モジュール304は、係る決定を一組のルール、例えば、交通ルール又は走行ルール312にしたがって行うことができ、これらを、永久記憶装置352に記憶することができる。
ルート決定モジュール307は、出発地点から目的地点までの1以上のルート又は経路を提供するように構成される。例えば、ユーザから受け取った出発地から目的地までの所定の移動について、ルート決定モジュール307は、ルート及びマップ情報311を取得し、出発地から目的地に到達するまでの全ての可能なルート又は経路を決定する。ルート決定モジュール307は、出発地から目的地に到達するまでの、ルート決定モジュール307が決定するルートのそれぞれについて、地形図の形態で参照線を生成することができる。参照線は、他の車両、障害物、又は交通状況などの他のものからの干渉がない理想的なルート又は経路を意味する。即ち、他の車両、歩行者、又は障害物が道路上にない場合、ADVは、参照線に対して正確に又は参照線の近くを沿って走行する。次いで、地形図は、決定モジュール304及び/又は計画モジュール305に提供される。決定モジュール304及び/又は計画モジュール305は、可能なルートの全てを調べ、他のモジュールによって提供される他のデータ、例えば、ローカリゼーションモジュール301からの交通状況、感知モジュール302によって感知される走行環境、及び予測モジュール303によって予測される交通状況などを考慮して、最も適切なルートのうちの1つを選択且つ修正する。ADVを制御するための実際の経路又はルートは、特定の時点での具体的な走行環境に応じて、ルート決定モジュール307によって提供される参照線に近くてもよいし、それと異なっていてもよい。
したがって、感知された物体のそれぞれについての決定に基づいて、決定モジュール304及び/又は計画モジュール305は、ルート決定モジュール307によって提供された参照線を基準として用いて、自律車両の経路又はルート、及び走行パラメータ(例えば、距離、速度、及び/又は曲がり角度)を計画する。即ち、所定の物体について、決定モジュール304は、物体に対してすべきことを決定し、一方、計画モジュール305は、それをどのようにすべきかを決定する。例えば、所定の物体について、決定モジュール304は、物体を通り過ぎることを決定することができ、一方、計画モジュール305は、物体の左右いずれの側で通り過ぎるべきかを決定することができる。計画及び制御データは、計画モジュール305によって生成され、車両300が、どのように次の移動サイクル(例えば、次のルート/経路セグメント)に移るかを記述する情報を含む。例えば、計画及び制御データは、車両300に対して、1時間当たり30マイル(mph)の速度で10メートル移動し、次いで、25mphの速度で右側車線に変更するように命令できる。
計画及び制御データに基づき、制御モジュール306は、適切な命令又は信号を車両制御システム111に送信することにより、計画及び制御データによって決められたルート又は経路にしたがって、自律車両を制御し走行させる。計画及び制御データは、ルート又は経路に沿った様々な時点での適切な車両条件又は走行パラメータ(例えば、スロットル、ブレーキ、ステアリングの各命令)を用いて、ルート又は経路の第1の地点から第2の地点に車両を走行させるのに十分な情報を含む。
一実施形態では、計画フェーズは、走行サイクルとも称されるいくつかの計画サイクルで行われ、例えば、100ミリ秒(ms)間隔で毎回行われる。計画サイクル又は走行サイクルのそれぞれについて、1以上の制御命令が、計画及び制御データに基づいて発せられる。即ち、100msごとに、計画モジュール305は、次のルートセグメント又は経路セグメントを計画する。これは、例えば、目的位置、及びADVが前記目的位置に到達するのに要する時間を含む。或いは、計画モジュール305は、更に、具体的な速度、方向、及び/又はステアリング角度などを特定することができる。一実施形態では、計画モジュール305は、次の所定時間、例えば5秒間で、ルートセグメント又は経路セグメントを計画する。各計画サイクルについて、計画モジュール305は、現在のサイクル(例えば、次の5秒間)の目的位置を、前回のサイクルで計画された目的位置に基づいて計画する。次いで、制御モジュール306は、現在のサイクルの計画及び制御データに基づいて、1以上の制御命令(例えば、スロットル、ブレーキ、ステアリングの各制御命令)を生成する。
なお、決定モジュール304及び計画モジュール305は、統合モジュールとして統合することができる。決定モジュール304/計画モジュール305は、運行システム又は運行システムの機能を含み、自律車両用の走行経路を決定することができる。例えば、運行システムは、感知された障害物を実質的に回避する経路に沿った自律車両の移動に影響する一連の速度及び進行方向を決定することができ、一般に、最終目的地に至る車道ベースの経路に沿って自律車両を進める。目的地は、ユーザインターフェースシステム113を介するユーザの入力にしたがって設定することができる。運行システムは、自律車両の動作中に、走行経路を動的にアップデートすることができる。運行システムは、自律車両用の走行経路を決定するように、GPSシステム及び1以上のマップからのデータを取り込むことができる。
決定モジュール304/計画モジュール305は、更に、衝突回避システム又は衝突回避システムの機能を含み、自律車両の環境における潜在的な障害物の特定、評価、及び回避又は交渉を行うことができる。例えば、衝突回避システムは、制御システム111における1以上のサブシステムを操作して、逸らす動作、曲がる動作、ブレーキする動作などを開始させることによって、自律車両の運行に変化をもたらすことができる。衝突回避システムは、周囲の交通パターン、道路状態などに基づいて、自動的に、実現可能な障害物回避動作を決定することができる。例えば、衝突回避システムは、他の検知システムが、逸らされる自律車両に隣接する領域に、歩行者、車両、建設バリアなどを検出するときは、逸らす動作が開始されないように構成することができる。衝突回避システムは、利用可能で、自律車両の乗員の安全を最大限にする動作を自動的に選択することができる。一例では、衝突回避システムは、自律車両の乗員室の加速度が最小限となると予測される回避動作を選択することができる。
一実施形態によれば、データコレクタ308は、走行統計データを収集し、それを、走行統計313の一部として、永久記憶装置352に記憶するように構成される。次いで、走行統計313は、以下に記載されるように、動的モデルの性能を評価するために利用することができる。
図4は、一実施形態に係る自律走行のためのシステムアーキテクチャを示すブロック図である。システムアーキテクチャ400は、図3A及び図3Bに示される自律走行システムのシステムアーキテクチャを表すことができる。図4を参照すると、システムアーキテクチャ400は、アプリケーション層401、計画及び制御(PNC)層402、感知層403、ドライバ層404、ファームウェア層405、及びハードウェア層406を含むが、これらに限定されない。アプリケーション層401は、自律走行車両のユーザ又は乗員と相互作用するユーザインターフェース又は構成アプリケーション、例えば、ユーザインターフェースシステム113に関連する機能などを含むことができる。PNC層402は、少なくとも、計画モジュール305及び制御モジュール306の機能を含むことができる。感知層403は、少なくとも、感知モジュール302の機能を含むことができる。一実施形態では、感知モジュール303及び/又は決定モジュール304の機能を含む追加の層が存在する。或いは、係る機能は、PNC層402及び/又は感知層403に含まれてもよい。ファームウェア層405は、少なくとも、検知システム115の機能を表すことができ、これは、フィールドプログラマブルゲートアレイ(FPGA)の形態で実行することができる。ハードウェア層406は、制御システム111などの自律走行車両のハードウェアを表すことができる。層401~403は、ファームウェア層405及びハードウェア層406とデバイスドライバ層404を介して通信することができる。
図5は、実施形態に係る車両の動的挙動をシミュレートするための例示的な動的モデル500を示す。この例では、動的モデル500は、車両のセンサによって収集された現実世界のデータを用いて訓練された多層パーセプトロン(MLP)ニューラルネットワークモジュールであることができる。動的モデル500は、ヒトの脳をモデル化するように設計された、結合されたニューロンの集合を含む。動的モデルにおけるニューロンは、十分に結合されることができ、1つの層の各ノードは、ある重みで、続く層の全てのノードに結合する。動的モデルの訓練において、動的モデルは、予想した結果と比較したときの、出力におけるエラーの量に基づき各データを処理した後に、結合重みを変更する。
一実施形態では、動的モデル500は、入力データ501を受け取る入力層505、入力データ501に関する決定又は予測又は分類を行う出力層509、及び入力層505と出力層509との間の任意の数の隠れ層(例えば、隠れ層507)を含むことができる。隠れ層は、動的モデル500の計算エンジンである。隠れ層507のニューロンは、入力データ501を変換するための活性化関数を含むことができる。正規化線形ユニット(ReLU)502は、動的モデル500で用いられる例示的な活性化関数を示す。例えば、ReLU502は、任意の負の入力を受け取ると0を返すことができ、任意の正の値の場合には、その値をそのまま返すことができる。動的モデル500は、1層の隠れ層507と1層の出力層509を示すが、動的モデル500は、複数層の隠れ層と複数層の出力層を含むことができる。
実施形態では、ニューラルネットワークモデル500の入力データ501は、ADVの状態(例えば、速度、加速度、及び角速度)及び第1の走行サイクルで命令モジュール306から受け取った制御命令(例えば、スロットル命令、ブレーキ命令、及びステアリング命令)を含む。入力データ501は、1層以上の隠れ層によって処理され、出力データ504に変換することができ、これらは、第2の走行サイクルでのADVの予想又はシミュレートされた状態である。一態様では、出力データ504は、ADVの予想又はシミュレートされた加速度及び角速度を含むことができる。予想された加速度及び角速度に基づき、第2の走行サイクルでのADVの予想された速度を計算することができる。第2の走行サイクルでの出力データ504は、動的モデル500にフィードバックすることができ、次の走行サイクルでの出力を予測するために、第2の走行サイクルでの制御命令と共に用いることができる。一態様では、多くの走行サイクルに亘る出力データ504を用いて、走行シナリオの軌跡に沿ったADVの位置又はグランドトゥルース値を生成することができる。動的モデル500がMLPニューラルネットワークモデルとして示されるが、動的モデル500は、MLPニューラルネットワークモデルと同一の入力データ501及び出力データ504を有する限り、古典的なルールベースモデルとして実装することもできる。
図6は、実施形態に係る、図5に示される動的モデルを訓練するための例示的なシステム600を示す。図6に示されるように、例示的な動的訓練システム600は、動的モデル601を訓練するための自動動的訓練モジュール124と走行統計モジュール313を含む。自動動的訓練モジュール124は、動的モデル評価モジュール605、特徴抽出モジュール607、及び訓練コントローラ609を含む。走行統計モジュール313は、制御された試験シナリオのための履歴走行統計622と走行統計603を含む。
履歴走行統計622は、センサ(例えば、検知システム115のIMU213及びGPS212)によって収集された現実世界のデータを含み、各種の道路タイプ、障害物タイプ、及び道路環境をカバーし得る様々なシナリオにおける現実世界の車両のダイナミクス(例えば、状態)を記録する。例えば、現実世界のデータは、BAIDUTMのApollo Open Data Platformからダウンロードすることができる。制御された試験シナリオのための走行統計603は、人間の運転者によって運転される車両によって生成される現実世界のデータである。
一実施形態では、訓練コントローラ609は、訓練データを抽出する、訓練データを用いて動的モデル601を訓練する、及び動的モデル601が指定の要件を満たすまで動的モデル601を繰り返し評価するプロセスを自動化するアルゴリズムを実行することができる。
一実施形態では、訓練コントローラ609は、いくつかの特徴の各特徴について、所定の等間隔の数値範囲を自動的に生成することができる。本開示において、特徴及び走行パラメータは、相互変換可能に用いることができる。例えば、速度の走行パラメータについて、訓練コントローラ609は、次の数値範囲を生成することができる:0~5mps、5~10mps、10~15mps、15~20mps、及び20~25mps。等間隔の数値範囲のそれぞれから、訓練コントローラ609は、履歴走行統計622から値を抽出することができる。一実施形態では、履歴走行統計622は、BAIDUTMのApollo Open Data Platformのサブセットであることができ、Apollo Open Data Platformと同期するデータストレージに記憶させることができる。したがって、数値の各範囲から十分なデータ点が存在し得る。
各走行パラメータについての数値範囲が決定されると、訓練コントローラ609は、履歴走行統計622から、その走行パラメータについての各範囲からデータを抽出し、いくつかの特徴シナリオを作成することができる。これらの特徴シナリオのそれぞれは、走行パラメータについての値、又は複数の走行パラメータについての値の組合せ(本開示においては、特徴又は走行特徴とも称される)を表す。
例示的な例として、訓練コントローラ609は、例えば、3つの走行パラメータ、即ち、ステアリング角度、速度、及び加速度についての特徴シナリオを作成することができる。各走行パラメータについて、訓練コントローラ609は、いくつかの等間隔範囲を作成することができる。例えば、シミュレータコントローラ609は、ステアリング角度についての12種の等間隔範囲、速度についての5種の等間隔範囲、及び加速度についての7種の等間隔範囲を作成することができる。ある実施では、合計420種の特徴シナリオ(即ち、127=420)が、前記範囲のそれぞれの値を用いて作成される。他の実施では、異なる数の特徴シナリオを作成することができる。
一実施形態では、訓練コントローラ609は、特徴抽出モジュール607を呼び出し、特徴シナリオを作成するために、履歴走行統計622からデータを抽出することができる。各特徴シナリオについての訓練データを用いて、訓練コントローラ609は、機械学習エンジン122によって提供されるサービス、機能、ルーチン、ライブラリ、及び/又はアプリケーションプログラミングインターフェース(API)を呼び出し、動的モデル601を訓練することができる。訓練コントローラ609は、続いて、走行統計603からのデータを用いる推論を行うことにより、動的モデル601を評価することができる。一実施形態では、訓練コントローラ609は、動的モジュール評価モジュール605を呼び出し、性能メトリクスに基づいて動的モデル601を評価することができる。
図6に示されるように、動的モデル601は、走行統計603から、いくつかの制御された試験シナリオから生成されるデータを受け取ることができる。自然な態様で動作する車両によって生成される試験データと異なり、制御された試験シナリオから生成されるデータは、様々な走行シナリオ又は走行条件下での車両によって生成されるデータであり得る。これらのデータは、具体的には、走行条件又は走行シナリオのための試験データを生成する目的で作成される。
一実施形態では、試験データは、いくつかの注意深く設計され制御された試験シナリオについてのグランドトゥルース値を含み、訓練動的モデル601の性能を試験することができる。制御された試験シナリオは、特徴シナリオである。1以上の制御された試験シナリオが、各特徴について設計される。
例えば、1つの制御された試験シナリオは、ステアリングを180°左方向に回転させることであり、別の制御された試験シナリオは、ステアリングを180°右方向に回転させることであり、更に別の制御された試験シナリオは、地点Aから地点Bまで1分間で走行させることである。制御された試験シナリオのそれぞれについて、グランドトゥルース値を走行統計603に記録し、これを、制御された試験シナリオのそれぞれについて、動的モデル601の出力と比較することができる。
一実施形態では、走行統計603は、制御された試験シナリオのいくつかの走行サイクルについて、捕捉された車両状態及び1以上の制御命令を含むことができる。前記状態の例としては、現在の走行サイクルでのADVの速度、加速度、及び角速度が挙げられ、制御命令の例としては、現在の走行サイクルでのスロットル命令、ブレーキ命令、及びステアリング命令が挙げられる。現在の走行サイクルの各状態は、次の走行サイクルのための、対応する予想される未来状態608と実際の未来状態606を有することができる。対応する予想される未来状態は、動的モデル601の出力であることができ、一方、実際の未来状態606は、制御された試験シナリオ下で生成される現実世界のデータからのグランドトゥルース値であることができる。
実施形態では、動的モデル評価モジュール605は、損失関数610を用いて、それぞれの実際の未来状態606とそれぞれの予想される未来状態608とを比較し、比較結果611を生成することができる。一態様では、比較結果611は、制御された試験シナリオにおける車両の実際の軌跡を予測するときの、動的モデル601の正確度を示す評価メトリクスであることができる。動的モデル評価モジュール605は、比較結果611及び/又は損失関数610に基づき、各特徴シナリオについて、動的モデル601の推論性能の格付けを行うことができる。
一実施形態では、各特徴シナリオは、複数の特徴のための複数の値又は1つの特徴のための値を含むことができる。例えば、特徴シナリオは、1秒当たり5マイルの速度;1秒当たり5マイルの速度、左方向に5°のステアリング角度;又は1秒当たり5マイルの速度、左方向に5°のステアリング角度、及び15%のスロットル率であることができる。したがって、各特徴シナリオは、1以上の特徴と関連することができる。特定の特徴に関連するあらゆる特徴シナリオについて、二乗平均平方根誤差又は他の性能メトリクスを、グランドトゥルース値と、動的モデル601からの予想された値との間の比較結果に基づいて計算することができる。各特徴についての二乗平均平方根誤差のための所定のアルゴリズムを用いて、性能スコアを計算することができる。
性能スコアに基づいて、制御された試験シナリオに関連する特徴の数のランク付けを行うことができる。訓練コントローラ609は、所定の閾値よりも低いスコアを受け取る1以上の特徴を特定することができ、特徴抽出モジュール607を用いて、1以上の特徴についての履歴走行データ622から追加データを抽出し、動的モデル601を再訓練することができる。追加データを用いる再訓練後、動的モデル評価モジュール605を再度呼び出し、1以上の特徴についての動的モデル601の性能を評価することができる。前記プロセスは、動的モデル601が、動的モデル601の訓練に用いられ、且つ制御された試験シナリオの設計の対象である特徴のそれぞれについて、所定の要件を満たすまで自動的に繰り返すことができる。一実施形態では、性能メトリクス又は性能スコアを評価するためのプロセスを実行して、動的モデル601が訓練された後の動的モデル601の正確度を評価することができる。
一実施形態では、所定の閾値よりも低いスコアを受け取る1以上の特徴を特定する前記プロセスを用いて、所定の閾値よりも低いスコアを受け取る1以上の特徴シナリオを特定することができる。同様に、特徴抽出モジュール607は、1以上の特徴シナリオについての追加データを抽出し、動的モデル601を再訓練することができる。追加データを用いる再訓練後、動的モデル評価モジュール605を再度呼び出し、1以上の特徴シナリオについての動的モデル601の性能を評価することができる。前記プロセスは、動的モデル601が、過去に作成された特徴シナリオのそれぞれについて、所定の要件を満たすまで自動的に繰り返すことができる。
図7は、実施形態に係る動的モデルを訓練する例示的なフロー図700を示す。図7に示されるように、動的モデルを訓練する自動ループは、車両データ生成フェーズ706と、オフラインデータ及びパイプライン&モデル訓練フェーズ710とを含むことができる。動的モデルを十分に訓練し、全ての所定要件を満たすことができたら、動的モデルを、オンラインシミュレーション&格付けフェーズ720のコントロール-イン-ザ-ループシミュレーションに与えることができる。
より具体的には、車両データ生成フェーズ706の間に、外部パートナー又は動的モデル開発者701は、道路705上で車両を手動で走行させることによって現実世界の走行統計を収集し、機械学習訓練データセットストレージ707(例えば、BAIDUTMのApollo Open Data Platform)に走行統計を記録することができる。
オフラインデータパイプライン及びモデル訓練フェーズ710の間、一組の所定の特徴に関連する所定特徴シナリオ709についてのデータが抽出され、オペレーション711におけるいくつかの動的モデルを訓練するために使用される。動的モデルが訓練されたら、動的モデルを、履歴走行統計を用いてオフラインで評価することができる。動的モデル及びグランドトゥルースの出力713に基づいて、動的モデルの格付けを行うことができ、最も高いスコアを有する動的モデルをオペレーション715で選択することができる。一態様では、動的モデルの性能を、動的モデルによって生成される軌跡とグランドトゥルースとの間の類似度に基づいて評価することができる。
一実施形態では、選択した動的モデルが更にリファインされ得るように、オペレーション716で記録されたデータから走行パラメータ又は特徴を抽出することによって、前記モデルを、再度、いくつかの制御された試験シナリオからの走行統計に対して評価することができる。制御された試験シナリオは、動的モデルを訓練できるADVの走行パラメータからの値の様々な組合せを表すことができる。
走行パラメータの例としては、ブレーキ、加速、アイドル速度、逆進走行、直進走行、左折又は右折、Uターン、車線変更、及びパーキング走行などが挙げられる。各走行パラメータは、複数の値を有することができる。1つのパラメータからの値、又は複数のパラメータからの複数の値の組合せが、制御された試験シナリオを構成することができる。
推論は、制御された試験シナリオからの走行統計を用いて、動的モデルによって行うことができる。動的モデルの出力を、各制御された試験シナリオについてのグランドトゥルースと比較することができる。動的モデルの、各制御された試験シナリオに対する性能は、性能メトリクスを用いて格付けすることができ、所定の閾値未満のスコアを受け取る制御された試験シナリオが特定される。
更に、制御された試験シナリオの性能メトリクスに基づいて、動的モデルの訓練に用いられる走行パラメータ又は特徴をランク付けすることもでき、動的モデルが所定の性能閾値に到達しない1以上の特徴を特定することができる。特徴をランク付けするための第1の工程は、ある特徴についての制御された特徴シナリオを決定することと;各制御された特徴シナリオについてのグランドトゥルース値と、その制御された特徴シナリオを入力として受け取ることに応答して動的モデルによって生成された予想値とを比較することと;二乗平均平方根誤差又はその変換値(例えば、二乗平均平方根誤差又は他の性能メトリクスに基づく性能スコア)などの性能メトリクスを計算することと;性能メトリクス又はその変換値に基づく特徴をランク付けすることと;所定の閾値よりも低い性能メトリクスをそれぞれ受け取る1以上の特徴を特定することとを含む。
1以上の特徴が特定された後、動的モデルの再訓練において使用するための、データロギング707によって記録されるものなどの履歴走行統計から追加データを抽出すること(709)によって、動的モデルを訓練する自動ループを継続することができる。前記プロセスは、動的モデルが、一組の所定要件にしたがって成功裏に動作するまで、繰り返し行うことができる。
動的モデルは、具体的には、特定のADV又はADVの特定のタイプ若しくはモデルを自律的に走行させるために訓練される。動的モデルは、ニューラルネットワークモデルであることができ、これは、線形回帰、多層パーセプション、又は回帰型ニューラルネットワークモデルであることができる。各種車両から収集した走行統計は、発せられた様々な制御命令(例えば、スロットル、ブレーキ、ステアリングの各命令)及び様々な時点での車両の応答又は状態(例えば、速度、加速度、減速度、方向、角速度)を含むことができる。
図7に示されるように、オンラインシミュレーション及び格付けフェーズ720において、訓練された動的モデルをシミュレータに適用することができ、コントロール-イン-ザ-ループプロセス719によるシミュレーションを実行することができる。動的モデルの性能を更に評価して、他の制御された試験シナリオについてのADVの挙動予測における動的モデルの正確度を評価することができる。一態様では、動的モデルの性能を、動的モデルによって生成される軌跡と制御された試験シナリオからのグランドトゥルースとの間の類似度に基づいて評価することができる。なお、車両データ生成フェーズ706、オフラインモデル訓練フェーズ710、及びシミュレーションフェーズ720は、異なる計算ノード、例えば、異なるクラウドサーバなどで行うことができる。或いは、クラスタの異なるノード(例えば、アプリケーションサーバ又はWebサーバの背後のバックエンドサーバ)によって行うことができる。
図8は、一実施形態に係る車両の動的挙動をシミュレートするための、自律車両の感知及び計画システム並びに制御モジュールと統合されたコントロール-イン-ザ-ループシミュレーション800の例を示すブロック図である。図3A及び図3Bに記載されるように、感知及び計画システムは、最適なルートを計画し、計画及び制御データを生成して、計画されたルートにしたがって車両を案内し、指定の目的地に到達させるモジュールを含む。
図示されるように、各走行サイクルで、ループが、感知モジュール302、予測モジュール303、決定モジュール304、計画モジュール305、制御モジュール306、及びローカリゼーションモジュール301によって形成される。計画モジュール305から受け取った現在の走行サイクルの計画及び制御データに基づいて、制御モジュール306は、次の走行サイクルのために、1以上の制御命令(例えば、スロットル、ブレーキ、ステアリングの各制御命令)を生成する。動的モデル601は、制御命令及び現在の車両状態(例えば、速度、加速度、減速度、方向、角速度)に基づいて、シミュレートされた車両の状態及び姿勢をアップデートする。動的モデル601からの出力は、ローカリゼーションモジュール301によって使用されて車両の位置をアップデートすることができ、次の走行サイクルのために、コントロール-イン-ザ-ループシミュレーション800によって利用することができる。
動的モデル601が正確である場合、車両のシミュレートされた挙動は、同一の制御命令を与えたとき、車両の実際の挙動と同一になる。しかし、動的モデル601の制限並びに制御命令を与えたときの車両のアクチュエータ(例えば、スロットル、ステアリング、及びブレーキ)の複雑なダイナミクス及び物理的制約のため、動的モデル601からのシミュレートされた挙動は、車両の実際の挙動から逸れる。性能メトリクスを用いて、車両の実際の挙動の予測における動的モデル601の正確度を評価することができる。
図9は、一実施形態に係る動的モデル601の性能を評価する例示的なオペレーションを示す。動的モデル601は、その挙動がシミュレートされる車両の制御命令及び状態を受け取ることができる。
一態様では、制御命令及び状態情報は、いくつかの制御された試験シナリオから記録された走行統計、例えば、図6の走行統計603から提供され得る。制御された試験シナリオから生成されるデータは、様々な走行シナリオ又は走行条件下での車両によって生成されるデータであり得る。これらのデータは、具体的には、動的モデルの性能を評価するための試験データを生成する目的で作成される。走行統計は、車両を、手動で走行させたとき又は自律的に走行させたときに記録されるデータであり得る。走行シナリオは、一般的な走行動作、例えば、左折/右折、停止/非停止、ジグザグの軌跡など、及びそれらの組合せを含むことができる。走行シナリオは、また、交通信号機での始動/停止、左折、右折、車線変更、及び様々な速度変化などを伴う通常の街路上の比較的長い(例えば、10分間)走行シナリオも含むことができる。
一態様では、制御命令は、例えば、スロットルの開口量、ブレーキ力、及び最大の可能なレベルの割合(%)としてのステアリング角度などのスロットル、ブレーキ、ステアリングの各命令を含むことができる。この態様では、車両の状態情報は、車両の速度、加速度、方向、角速度などを含むことができる。動的モデル601の性能を評価するときにフィードバック制御効果を除去するために、図8に示すコントロール-イン-ザ-ループシミュレーションのループを開放して、走行シナリオの制御命令を動的モデル601に入れることができる。
性能評価モジュール901は、走行シナリオと同一の制御命令が与えられた車両の実際の位置(例えば、グランドトゥルース)を含む走行シナリオの期間に亘って、動的モデル601によって生成されたシミュレート位置を比較することができる。性能評価モジュール901は、動的モデル601からの予測された軌跡とグランドトゥルースによって表される実際の軌跡との間の類似度を示す評価メトリクスを生成することができる。
一態様では、評価メトリクスは、累積絶対軌跡誤差(c-ATE)又は平均絶対軌跡誤差(m-ATE)を含むことができる。c-ATEとm-ATEは、次のように表すことができる。
Figure 2022058566000002
式中、pgt,iは、グランドトゥルースの軌跡のi番目の点であり、pm,iは、動的モジュール601からの予測された軌跡のi番目の点であり、Nは、各軌跡の点の数である。
Figure 2022058566000003
は、グランドトゥルースの軌跡及び予測された軌跡の各点の間のユークリッド距離を表すために用いられる。
一態様では、評価メトリクスは、エンドポイント差(ED)を含むことができ、これは、グランドトゥルースの軌跡及び予測された軌跡の各最終位置の間の距離である。
一態様では、評価メトリクスは、2シグマ欠陥率(ε2σ)を含むことができ、これは、軌跡における点の総数に亘って予測された位置誤差の2σ範囲外の真の位置誤差(例えば、グランドトゥルース点と、式1における動的モデル予測点との間のユークリッド距離)を有する点の数の比率を表す。
Figure 2022058566000004
式中、
Figure 2022058566000005
のとき、
Figure 2022058566000006
であり、その他の場合は、いずれも
Figure 2022058566000007
である。
一態様では、評価メトリクスは、予測された軌跡とグランドトゥルースの軌跡との間のハウスドルフ距離(HAU)を含むことができ、次のように表される。
Figure 2022058566000008
式中、pは、動的モデル予測軌跡Tからの軌跡点であり、pgtは、グランドトゥルースの軌跡Tgtからの軌跡点である。T及びTgtの軌跡点上における最大及び最小関数は、各軌跡の最大値及び最小値を計算する。したがって、ハウスドルフ距離は、Tgtの最大点の値とTの最小点の値との間のユークリッド距離又はTの最大点の値とTgtの最小点の値との間のユークリッド距離のより大きな方を計算する。
一態様では、評価メトリクスは、予測された軌跡とグランドトゥルースの軌跡との間の最長共通部分列(LCSS)誤差を含むことができ、次のように表される。
Figure 2022058566000009
式中、L(・)は、pとpgtとの間の距離が、x及びy方向における閾値を越えないときの、予測された軌跡とグランドトゥルースの軌跡の最長共通距離を与える関数である。一態様では、x及びy方向における閾値を0.1mに設定することができる。N及びNgtは、それぞれ、予測された軌跡とグランドトゥルースの軌跡の長さである。
一態様では、評価メトリクスは、予測された軌跡とグランドトゥルースの軌跡との間の類似度を測定する動的時間伸縮法(DTW)を含むことができる。DTWは、2種の軌跡が異なる長さを有する場合に、一方の軌跡の点を他方の軌跡の点にマッピングすることができるように、2種の軌跡を時系列で伸縮又はアラインメントさせる。DTWは、c-ATE及びm-ATEと同様に、一対の一致した軌跡点間のユークリッド距離の合計として計算することができる。
性能評価モジュール901によって生成された評価メトリクスは、車両のグランドトゥルースの軌跡を予測する上で、動的モデル601の予測された軌跡の正確度の尺度であり、したがって、動的モデル601の性能を評価することが可能となる。次いで、予測された軌跡とグランドトゥルースの軌跡との間の残存エラーを最小限にするアルゴリズムを展開することによって、又は各種走行シナリオを用いる再訓練によって動的モデル601を微調整することができる。一態様では、評価メトリクスを用いて、評価対象の一組の動的モデルから最も正確なモデルを選択することができる。次いで、コントロール-イン-ザ-ループシミュレータは、微調整された又は選択された動的モデルを閉ループで用い、現実世界の走行シナリオにおける車両の挙動をより正確に予測することができる。記載される評価メトリクスが、予測された軌跡とグランドトゥルースの軌跡との間の類似度を測定する一方、他の評価メトリクスは、動的モデルからの他の動的状態とグランドトゥルースの値(例えば、進行角度、角速度、速度、加速度など)との間の類似度を測定することができる。
図10は、一実施形態に係る動的モデルの性能を評価するためのプロセス1000の例を示すフロー図である。プロセス1000は、ソフトウェア、ハードウェア、又はこれらの組合せを含み得る処理ロジックによって行うことができる。例えば、プロセス1000は、図5における動的モデル500、図6における動的モデル601若しくは動的モデル評価モジュール605、図7若しくは図8におけるコントロール-イン-ザ-ループシミュレーション、又は図9の動的モデル601若しくは性能評価モジュール901の一部として行うことができる。
オペレーション1001では、プロセス1000は、シミュレート対象のADVの状態、及び複数の時点でADVに与えられる制御命令を受け取る。状態及び制御命令は、ADVの挙動をシミュレートするための、走行シナリオ入力から動的モデルに記録される走行統計であることができる。
オペレーション1002では、プロセス1000は、動的モデルから受け取った状態及び制御命令に基づくシミュレートされた軌跡の複数の予測位置を生成する。
オペレーション1003では、プロセス1000は、ADVに与えられた同一の制御命令に基づいて生成されたグランドトゥルースの軌跡の複数の実際の位置を受け取る。
オペレーション1004では、プロセス1000は、シミュレートされた軌跡の予測位置とグランドトゥルースの軌跡の実際の位置との間の類似度を測定する評価メトリクスを生成する。
前述した詳細な説明の一部記載は、コンピュータメモリ内のデータビットに基づくオペレーションのアルゴリズム及び記号表現を用いてなされている。これらのアルゴリズムの記載及び表現は、データ処理分野における当業者によって、自身の研究の内容を他の当業者に最も効果的に伝えるために使用される方法である。アルゴリズムは、ここでは、及び一般的に言っても、所望の結果に至るオペレーションのセルフコンシステントなシーケンスであると考えられる。オペレーションは、物理量の物理的操作を要求するものである。
しかし、これらの用語及び類似用語はいずれも、適切な物理量に関連するものであり、これらの量に与えられる便利なラベルであるに過ぎないことに留意すべきである。前述の記載と明らかに異なる具体的記載がなされない限り、以下の特許請求の範囲に示される用語などの用語を用いた記載は、明細書全体を通して、コンピュータシステムのレジスタ及びメモリ内の物理(電子)量として表されるデータを、コンピュータシステムメモリ若しくはレジスタ又は他の情報ストレージ、トランミッション、若しくは表示装置内の物理量として同様に表される他のデータに操作及び変換するコンピュータシステム又は同様の電子計算装置の動作及びプロセスを意味すると理解される。
本開示の実施形態は、また、本明細書におけるオペレーションを実行するための装置に関する。係るコンピュータプログラムは、非一過性のコンピュータ可読媒体に記憶される。マシン可読媒体としては、マシン(例えば、コンピュータ)によって読み取ることができる形態の情報を記憶するための任意の機構が挙げられる。例えば、マシン可読(例えば、コンピュータ可読)媒体としては、マシン(例えば、コンピュータ)可読記憶媒体(例えば、リードオンリーメモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリデバイス)などが挙げられる。
前述した図面に示されるプロセス又は方法は、ハードウェア(例えば、回路、専用ロジックなど)、ソフトウェア(例えば、非一過性コンピュータ可読媒体で具現化される)、又は両者の組合せを含むロジックを処理することによって行うことができる。プロセス又は方法が、いくつかの順次的なオペレーションを用いて前述されるものの、記載のオペレーションのいくつかは、異なる順序で実行することができることを理解すべきである。更に、いくつかのオペレーションは、順次的にではなく並行して行うことができる。
本開示の実施形態は、コンピュータ上で動作しているときに、前述した図面に示されるプロセス又は方法を前記コンピュータに実行させるためのコンピュータプログラムに更に関する。
本開示の実施形態は、任意の特定のプログラミング言語を参照して記載されていない。
本明細書に記載される開示の実施形態の教示を実行するために、各種プログラミング言語を使用できることが理解される。
前述の明細書では、本開示の実施形態を、その具体的且つ例示的な実施形態を参照して説明している。以下の特許請求の範囲に記載される本開示のより広い精神及び範囲から逸脱することなく、それらに様々な変更を加えることが可能であることは明らかである。したがって、明細書及び図面は、限定的な意味ではなく例示的な意味とみなされるべきである。

Claims (21)

  1. 自律走行車両(ADV)の挙動をシミュレートするために使用される動的シミュレータの性能を評価するための、コンピュータで実行される方法であって、
    前記動的シミュレータによって、前記ADVの複数の時点での複数の状態、及び前記複数の時点で前記ADVに与えられる複数の制御命令を受け取ることと、
    前記動的シミュレータによって、前記複数の状態及び前記複数の制御命令に基づいて、前記ADVのシミュレートされた軌跡の複数の予測された位置を生成することと、
    前記複数の時点で前記ADVに前記制御命令を与えることによって生成される、前記ADVのグランドトゥルースの軌跡の複数の実際の位置を受け取ることと、
    前記シミュレートされた軌跡の前記複数の予測された位置と、前記複数の時点での前記グランドトゥルースの軌跡の前記複数の実際の位置との間の類似度を測定する評価メトリクスを生成することと
    を含むことを特徴とする方法。
  2. 前記ADVの前記状態のそれぞれが、前記複数の時点の対応する時点での前記ADVの速度、加速度、及び角速度を含む請求項1に記載の方法。
  3. 前記制御命令のそれぞれが、前記複数の時点の対応する時点でのスロットル命令、ブレーキ命令、及びステアリング命令を含む請求項1に記載の方法。
  4. 前記動的シミュレータによって、前記シミュレートされた軌跡の前記複数のシミュレートされた位置を生成することが、
    現時点での前記制御命令を前記現時点の前記ADVの状態に与え、前記シミュレートされた軌跡の次の時点の前記予測された位置を連続的に生成することを含む請求項1に記載の方法。
  5. 前記評価メトリクスを生成することが、
    前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記複数の時点に亘って、前記予測された位置と、予測された位置誤差の2シグマ範囲外の対応する実際の位置との間に、位置誤差を有する時点の数の比率を表す2シグマ欠陥率を生成することを含む請求項1に記載の方法。
  6. 前記評価メトリクスを生成することが、
    前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記複数の時点に亘って、前記予測された位置と、対応する実際の位置との間のユークリッド距離を累積することを含む請求項1に記載の方法。
  7. 前記評価メトリクスを生成することが、以下:
    前記シミュレートされた軌跡の終末時点での前記予測された位置と、前記グランドトゥルースの軌跡の終末時点での前記実際の位置との間のユークリッド距離を測定すること、又は
    前記シミュレートされた軌跡の前記複数の予測された位置と、前記グランドトゥルースの軌跡の前記複数の実際の位置との間のハウスドルフ距離を測定すること
    の少なくともいずれかを含む請求項1に記載の方法。
  8. 前記評価メトリクスを生成することが、更に、以下:
    前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記複数の時点に亘って、前記予測された位置と、対応する実際の位置との間の最長共通部分列誤差を測定すること、又は
    前記シミュレートされた軌跡の前記複数の時点と、前記グランドトゥルースの軌跡の前記複数の時点とをアラインメントする動的時間伸縮法を行った後に、前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記予測された位置と、前記対応する実際の位置との間のユークリッド距離を累積すること
    の少なくともいずれかを含む請求項7に記載の方法。
  9. プロセッサによって実行されたときに、前記プロセッサにオペレーションを行わせる命令が記憶された非一過性のマシン可読媒体であって、前記オペレーションが、
    自律走行車両(ADV)の複数の時点での複数の状態、及び前記複数の時点で前記ADVに与えられる複数の制御命令を受け取ることと、
    前記複数の状態及び前記複数の制御命令に基づいて、前記ADVのシミュレートされた軌跡の複数の予測された位置を生成することと、
    前記複数の時点で前記ADVに前記制御命令を与えることによって生成される、前記ADVのグランドトゥルースの軌跡の複数の実際の位置を受け取ることと、
    前記シミュレートされた軌跡の前記複数の予測された位置と、前記複数の時点での前記グランドトゥルースの軌跡の前記複数の実際の位置との間の類似度を測定する評価メトリクスを生成することと
    を含むことを特徴とする非一過性のマシン可読媒体。
  10. 前記ADVの前記状態のそれぞれが、前記複数の時点の対応する時点での前記ADVの速度、加速度、及び角速度を含む請求項9に記載の非一過性のマシン可読媒体。
  11. 前記制御命令のそれぞれが、前記複数の時点の対応する時点でのスロットル命令、ブレーキ命令、及びステアリング命令を含む請求項9に記載の非一過性のマシン可読媒体。
  12. 前記シミュレートされた軌跡の前記複数のシミュレートされた位置を生成することが、
    現時点での前記制御命令を前記現時点の前記ADVの状態に与え、前記シミュレートされた軌跡の次の時点の前記予測された位置を連続的に生成することを含む請求項9に記載の非一過性のマシン可読媒体。
  13. 前記評価メトリクスを生成することが、
    前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記複数の時点に亘って、前記予測された位置と、予測された位置誤差の2シグマ範囲外の対応する実際の位置との間に、位置誤差を有する時点の数の比率を表す2シグマ欠陥率を生成することを含む請求項9に記載の非一過性のマシン可読媒体。
  14. 前記評価メトリクスを生成することが、
    前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記複数の時点に亘って、前記予測された位置と、対応する実際の位置との間のユークリッド距離を累積することを含む請求項9に記載の非一過性のマシン可読媒体。
  15. 前記評価メトリクスを生成することが、以下:
    前記シミュレートされた軌跡の終末時点での前記予測された位置と、前記グランドトゥルースの軌跡の終末時点での前記実際の位置との間のユークリッド距離を測定すること、又は
    前記シミュレートされた軌跡の前記複数の予測された位置と、前記グランドトゥルースの軌跡の前記複数の実際の位置との間のハウスドルフ距離を測定すること
    の少なくともいずれかを含む請求項9に記載の非一過性のマシン可読媒体。
  16. 前記評価メトリクスを生成することが、更に、以下:
    前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記複数の時点に亘って、前記予測された位置と、対応する実際の位置との間の最長共通部分列誤差を測定すること、又は
    前記シミュレートされた軌跡の前記複数の時点と、前記グランドトゥルースの軌跡の前記複数の時点とをアラインメントする動的時間伸縮法を行った後に、前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記予測された位置と、前記対応する実際の位置との間のユークリッド距離を累積すること
    の少なくともいずれかを含む請求項15に記載の非一過性のマシン可読媒体。
  17. データ処理システムであって、
    プロセッサと、
    前記プロセッサに接続され、前記プロセッサによって実行されたときに、前記プロセッサにオペレーションを行わせる命令を記憶するメモリとを含み、前記オペレーションが、
    少なくとも1つのセンサによって検知される自律走行車両(ADV)の複数の時点での複数の状態、及び前記複数の時点で前記ADVに与えられる複数の制御命令を受け取ることと、
    前記複数の状態及び前記複数の制御命令に基づいて、前記ADVのシミュレートされた軌跡の複数の予測された位置を生成することと、
    前記複数の時点で前記ADVに前記制御命令を与えることによって生成される、前記ADVのグランドトゥルースの軌跡の複数の実際の位置を受け取ることと、
    前記シミュレートされた軌跡の前記複数の予測された位置と、前記複数の時点での前記グランドトゥルースの軌跡の前記複数の実際の位置との間の類似度を測定する評価メトリクスを生成することと
    を含むことを特徴とするデータ処理システム。
  18. 前記ADVの前記状態のそれぞれが、前記複数の時点の対応する時点での前記ADVの速度、加速度、及び角速度を含む請求項17に記載のシステム。
  19. 前記制御命令のそれぞれが、前記複数の時点の対応する時点でのスロットル命令、ブレーキ命令、及びステアリング命令を含む請求項17に記載のシステム。
  20. 前記評価メトリクスを生成することが、
    前記シミュレートされた軌跡及び前記グランドトゥルースの軌跡における前記複数の時点に亘って、前記予測された位置と、予測された位置誤差の2シグマ範囲外の対応する実際の位置との間に、位置誤差を有する時点の数の比率を表す2シグマ欠陥率を生成することを含む請求項17に記載のシステム。
  21. コンピュータ上で動作しているときに、請求項1~8のいずれかに記載の方法を前記コンピュータに実行させるためのコンピュータプログラム。

JP2022002719A 2021-01-19 2022-01-12 自律走行車両用動的モデル評価パッケージ Active JP7345577B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/152,601 US20220227397A1 (en) 2021-01-19 2021-01-19 Dynamic model evaluation package for autonomous driving vehicles
US17/152,601 2021-01-19

Publications (2)

Publication Number Publication Date
JP2022058566A true JP2022058566A (ja) 2022-04-12
JP7345577B2 JP7345577B2 (ja) 2023-09-15

Family

ID=78485866

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022002719A Active JP7345577B2 (ja) 2021-01-19 2022-01-12 自律走行車両用動的モデル評価パッケージ

Country Status (5)

Country Link
US (1) US20220227397A1 (ja)
EP (1) EP4020113A1 (ja)
JP (1) JP7345577B2 (ja)
KR (1) KR102589587B1 (ja)
CN (1) CN114415672A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112965466B (zh) * 2021-02-18 2022-08-30 北京百度网讯科技有限公司 自动驾驶系统的还原测试方法、装置、设备及程序产品
KR102625974B1 (ko) * 2021-11-29 2024-01-18 주식회사 오비고 자율주행차량의 운행 검증에 필요한 검증 시나리오를 편집하는 방법 및 이를 이용한 서버
KR102575325B1 (ko) 2021-12-17 2023-09-06 주식회사 와이즈오토모티브 차량의 장애물 인식 속도 평가 시스템
KR102567152B1 (ko) 2021-12-17 2023-08-16 주식회사 와이즈오토모티브 차량의 장애물 인식 속도 평가 시스템 및 장애물 출현 장치

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011511281A (ja) * 2008-02-04 2011-04-07 テレ アトラス ノース アメリカ インコーポレイテッド センサにより検出されたオブジェクトとマップマッチングする方法
JP2019010967A (ja) * 2017-06-30 2019-01-24 株式会社 日立産業制御ソリューションズ 自動制御装置およびその制御方法
JP2019185783A (ja) * 2018-04-12 2019-10-24 バイドゥ ユーエスエイ エルエルシーBaidu USA LLC シミュレーションプラットフォームに配置された、機械学習モデルを訓練するためのシステム及び方法
WO2019228626A1 (en) * 2018-05-30 2019-12-05 Siemens Industry Software Nv Method and system for controlling an autonomous vehicle device to repeatedly follow a same predetermined trajectory

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012006485A (ja) 2010-06-24 2012-01-12 Toyota Motor Corp 運転評価装置
JP6815724B2 (ja) * 2015-11-04 2021-01-20 トヨタ自動車株式会社 自動運転システム
JP7314874B2 (ja) 2015-11-04 2023-07-26 トヨタ自動車株式会社 自動運転システム、自動運転装置、自動運転方法
CN106226800A (zh) * 2016-08-29 2016-12-14 天津航天中为数据系统科技有限公司 一种无人机航迹精度检测装置及检测方法
US10481044B2 (en) * 2017-05-18 2019-11-19 TuSimple Perception simulation for improved autonomous vehicle control
DE102017009435B4 (de) * 2017-10-10 2023-05-11 Volkswagen Ag Evaluation von Komponenten automatischer Fahrfunktionen und Fahrbahnerkennung auf unterschiedlichen Verarbeitungsstufen
US10884422B2 (en) * 2018-04-16 2021-01-05 Baidu Usa Llc Method for generating trajectories for autonomous driving vehicles (ADVS)
US10275667B1 (en) * 2018-09-05 2019-04-30 StradVision, Inc. Learning method, learning device for detecting lane through lane model and testing method, testing device using the same
US11199847B2 (en) * 2018-09-26 2021-12-14 Baidu Usa Llc Curvature corrected path sampling system for autonomous driving vehicles
CN109739245A (zh) * 2019-02-19 2019-05-10 东软睿驰汽车技术(沈阳)有限公司 一种基于无人驾驶的端到端模型评估方法及装置
CN109712421B (zh) * 2019-02-22 2021-06-04 百度在线网络技术(北京)有限公司 自动驾驶车辆的速度规划方法、装置和存储介质
US11106212B2 (en) * 2019-03-26 2021-08-31 Baidu Usa Llc Path planning for complex scenes with self-adjusting path length for autonomous driving vehicles
WO2020210127A1 (en) * 2019-04-12 2020-10-15 Nvidia Corporation Neural network training using ground truth data augmented with map information for autonomous machine applications
US11704554B2 (en) 2019-05-06 2023-07-18 Baidu Usa Llc Automated training data extraction method for dynamic models for autonomous driving vehicles
WO2020226071A1 (ja) * 2019-05-08 2020-11-12 日立オートモティブシステムズ株式会社 車両位置検出装置、及び、車両位置検出用パラメータセット作成装置
CN110160804B (zh) * 2019-05-31 2020-07-31 中国科学院深圳先进技术研究院 一种自动驾驶车辆的测试方法、装置及系统
CN110542436B (zh) * 2019-09-11 2021-10-15 百度在线网络技术(北京)有限公司 车辆定位系统的评测方法、装置、设备及存储介质
CN110987463B (zh) * 2019-11-08 2020-12-01 东南大学 面向多场景的智能驾驶自主车道变换性能测试方法
US11738771B2 (en) * 2019-12-20 2023-08-29 Baidu Usa Llc Dynamic model with actuation latency
US11900224B2 (en) * 2019-12-26 2024-02-13 Waymo Llc Generating trajectory labels from short-term intention and long-term result

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011511281A (ja) * 2008-02-04 2011-04-07 テレ アトラス ノース アメリカ インコーポレイテッド センサにより検出されたオブジェクトとマップマッチングする方法
JP2019010967A (ja) * 2017-06-30 2019-01-24 株式会社 日立産業制御ソリューションズ 自動制御装置およびその制御方法
JP2019185783A (ja) * 2018-04-12 2019-10-24 バイドゥ ユーエスエイ エルエルシーBaidu USA LLC シミュレーションプラットフォームに配置された、機械学習モデルを訓練するためのシステム及び方法
WO2019228626A1 (en) * 2018-05-30 2019-12-05 Siemens Industry Software Nv Method and system for controlling an autonomous vehicle device to repeatedly follow a same predetermined trajectory

Also Published As

Publication number Publication date
CN114415672A (zh) 2022-04-29
JP7345577B2 (ja) 2023-09-15
EP4020113A1 (en) 2022-06-29
US20220227397A1 (en) 2022-07-21
KR20210133904A (ko) 2021-11-08
KR102589587B1 (ko) 2023-10-16

Similar Documents

Publication Publication Date Title
US11726477B2 (en) Methods and systems for trajectory forecasting with recurrent neural networks using inertial behavioral rollout
US11269329B2 (en) Dynamic model with learning based localization correction system
CN111240312B (zh) 用于自动驾驶车辆的基于学习的动态建模方法
US20210339741A1 (en) Constraining vehicle operation based on uncertainty in perception and/or prediction
JP7345577B2 (ja) 自律走行車両用動的モデル評価パッケージ
CN111948938B (zh) 规划用于自动驾驶车辆的开放空间轨迹的松弛优化模型
CN112034834A (zh) 使用强化学习来加速自动驾驶车辆的轨迹规划的离线代理
CN112034833A (zh) 规划用于自动驾驶车辆的开放空间轨迹的在线代理
CN111971574A (zh) 用于自动驾驶车辆的lidar定位的基于深度学习的特征提取
JP2020083308A (ja) オブジェクト挙動のリアルタイム予測
US20210004966A1 (en) Method for the Assessment of Possible Trajectories
US11932282B2 (en) Vehicle trajectory control using a tree search
US11860634B2 (en) Lane-attention: predicting vehicles' moving trajectories by learning their attention over lanes
US11372417B2 (en) Method for predicting exiting intersection of moving obstacles for autonomous driving vehicles
EP4113393A2 (en) Learning-based critic for tuning a motion planner of autonomous driving vehicle
EP4198804A1 (en) Simulation obstacle vehicles with driving styles
EP4082856A2 (en) E2e learning-based evaluator for an autonomous driving vehicle
CN116225026A (zh) 自动驾驶车辆操作方法、电子设备以及计算机可读介质
US20240025442A1 (en) Trajectory planning in autonomous driving vehicles for unforeseen scenarios
US11453404B2 (en) Gear based vehicle load inference system
Samir et al. Novel Off-board Solution for Predicting Drivers’ Intentions using Probabilistic Classifiers
CN117312841A (zh) 自动驾驶车辆训练数据的制定方法、电子设备和介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20220112

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20220527

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230428

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: 20230829

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230905

R150 Certificate of patent or registration of utility model

Ref document number: 7345577

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150