CN111413957B - 用于确定自动驾驶中的驾驶动作的系统和方法 - Google Patents
用于确定自动驾驶中的驾驶动作的系统和方法 Download PDFInfo
- Publication number
- CN111413957B CN111413957B CN201811547926.7A CN201811547926A CN111413957B CN 111413957 B CN111413957 B CN 111413957B CN 201811547926 A CN201811547926 A CN 201811547926A CN 111413957 B CN111413957 B CN 111413957B
- Authority
- CN
- China
- Prior art keywords
- driving
- sample
- vehicle
- initial
- updated
- 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.)
- Active
Links
- 230000009471 action Effects 0.000 title claims abstract description 334
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000011156 evaluation Methods 0.000 claims abstract description 153
- 230000008569 process Effects 0.000 claims description 44
- 238000012549 training Methods 0.000 claims description 40
- 230000001133 acceleration Effects 0.000 claims description 26
- 230000008447 perception Effects 0.000 claims description 26
- 230000004044 response Effects 0.000 claims description 24
- 238000003062 neural network model Methods 0.000 claims description 17
- 238000004891 communication Methods 0.000 claims description 10
- 238000001514 detection method Methods 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 description 154
- 230000015654 memory Effects 0.000 description 39
- 239000002131 composite material Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 230000008859 change Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000001953 sensory effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0223—Control 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Drive control systems specially adapted for autonomous road vehicles
- B60W60/001—Planning or execution of driving tasks
- B60W60/0011—Planning or execution of driving tasks involving control alternatives for a single driving scenario, e.g. planning several paths to avoid obstacles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/10—Path keeping
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Purposes 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/18—Propelling the vehicle
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
- B60W40/04—Traffic conditions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
- B60W40/06—Road conditions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/10—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
- B60W40/105—Speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Details 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Drive control systems specially adapted for autonomous road vehicles
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/0088—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control 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
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0227—Control of position or course in two dimensions specially adapted to land vehicles using mechanical sensing means, e.g. for sensing treated area
- G05D1/0229—Control of position or course in two dimensions specially adapted to land vehicles using mechanical sensing means, e.g. for sensing treated area in combination with fixed guiding means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/08—Control of attitude, i.e. control of roll, pitch, or yaw
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Details 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/0001—Details of the control system
- B60W2050/0002—Automatic control, details of type of controller or control system architecture
- B60W2050/0014—Adaptive controllers
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Details 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/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
- B60W2050/005—Sampling
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Details 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/0062—Adapting control system settings
- B60W2050/0075—Automatic parameter input, automatic initialising or calibrating means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W2400/00—Indexing codes relating to detected, measured or calculated conditions or factors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Input parameters relating to overall vehicle dynamics
- B60W2520/10—Longitudinal speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Input parameters relating to overall vehicle dynamics
- B60W2520/10—Longitudinal speed
- B60W2520/105—Longitudinal acceleration
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Input parameters relating to overall vehicle dynamics
- B60W2520/12—Lateral speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Input parameters relating to infrastructure
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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
- B60W2554/00—Input parameters relating to objects
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Input parameters relating to data
- B60W2556/10—Historical data
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT 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/00—Input parameters relating to data
- B60W2556/40—High definition maps
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Abstract
本申请涉及一种用于确定自动驾驶中的驾驶动作的系统和方法。所述系统可以获取与车辆相关的驾驶信息;确定所述车辆的状态;基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值;基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作;基于所述目标驾驶动作确定目标驾驶路径;以及将信号发送至所述车辆的控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
Description
技术领域
本申请一般涉及用于自动驾驶的系统和方法,尤其涉及用于确定自动驾驶中的驾驶动作的系统和方法。
背景技术
随着微电子技术和机器人技术的发展,自动驾驶的探索现已迅速发展。对于自动驾驶系统来说,基于与自动驾驶系统的车辆相关的驾驶信息(例如,起始位置、定义的目的地、道路状况)确定合适的驾驶动作(例如,“向左转”、“向右转”、“停止”)是很重要的。此后并且相应地,自动驾驶系统将基于驾驶动作规划合适的驾驶路径。通常,自动驾驶系统根据人为定义的规则确定驾驶动作。然而,在某些情况下,人为定义的规则可能不充分、不准确或不适合,因此难以确定最优驾驶动作或最优驾驶路径。因此,希望提供用于准确和有效地确定驾驶动作的方法和系统,从而改善自动驾驶系统的性能。
发明内容
本申请的一方面涉及一种用于确定自动驾驶中驾驶动作的系统,包括:获取模块、状态确定模块、候选驾驶动作确定模块、目标驾驶动作确定模块、目标驾驶路径确定模块以及传输模块。获取模块用于获取与车辆相关的驾驶信息;状态确定模块用于确定所述车辆的状态;候选驾驶动作确定模块用于基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值;目标驾驶动作确定模块用于基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作;目标驾驶路径确定模块用于基于据所述目标驾驶动作确定目标驾驶路径;以及传输模块用于将信号发送至所述车辆的控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
本申请的另一方面涉及一种用于确定自动驾驶中驾驶动作的系统,包括:至少一个包括一组指令的存储介质;以及至少一个处理器与所述至少一个存储介质通信。当执行该组指令时,所述至少一个处理器用于使所述系统:获取与车辆相关的驾驶信息;确定所述车辆的状态;基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值;基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作;基于据所述目标驾驶动作确定目标驾驶路径;以及将信号发送至所述车辆的控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
在一些实施例中,所述与车辆相关的驾驶信息包括所述车辆第一预定范围内的感知信息和/或所述车辆所述第一预定范围内的地图信息。
在一些实施例中,所述感知信息包括道路信息和/或障碍物信息。
在一些实施例中,所述车辆的所述状态包括所述车辆的速度、所述车辆的加速度和/或所述车辆的方向盘的角度。
在一些实施例中,所述训练的驾驶动作模型由训练过程确定。训练过程包括:获取初始驾驶动作模型;获取初始样本驾驶信息,所述初始样本驾驶信息包括样本车辆第二预定范围内的初始样本感知信息和所述样本车辆所述第二预定范围内的初始样本地图信息;获取所述样本车辆的初始样本状态;基于所述初始样本驾驶信息、所述样本车辆的所述初始样本状态以及所述初始驾驶动作模型,确定初始样本驾驶动作;基于对应于所述初始样本驾驶动作的初始奖励值,确定与所述初始驾驶动作模型相关的初始样本评估值,其特征在于,所述初始奖励值与与所述初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离相关;确定所述初始样本评估值是否满足预设条件;以及响应于确定所述初始样本评估值满足所述预设条件,指定所述初始驾驶动作模型作为所述训练的驾驶动作模型。
在一些实施例中,所述训练过程进一步包括:响应于确定所述初始样本评估值不满足所述预设条件,执行一个或以上迭代以更新所述初始驾驶动作模型,直到更新的样本评估值满足所述预设条件,其特征在于,所述一个或以上迭代中的每一个包括:基于先前迭代中的奖励值确定更新的驾驶动作模型;获取更新的样本驾驶信息;基于所述先前迭代中的样本驾驶动作和所述先前迭代中的所述样本车辆的样本状态,估计所述样本车辆的更新的样本状态;基于所述更新的样本驾驶信息、所述样本车辆的所述更新的样本状态以及所述更新的驾驶动作模型,确定更新的样本驾驶动作;基于对应于所述更新的样本驾驶动作的更新的奖励值和所述先前迭代中的样本评估值,确定与所述更新的驾驶动作模型相关的更新的样本评估值;以及确定所述更新的样本评估值是否满足所述预设条件。
在一些实施例中,所述训练的驾驶动作模型包括Q-学习神经网络模型。
在一些实施例中,所述系统进一步根据预定规则,基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择所述目标驾驶动作。
本申请的又一方面涉及一种确定自动驾驶中驾驶动作的方法,所述方法包括:获取与车辆相关的驾驶信息;确定所述车辆的状态;基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值;基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作;基于所述目标驾驶动作确定目标驾驶路径;以及将信号发送至所述车辆的控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
在一些实施例中,所述与车辆相关的驾驶信息包括所述车辆第一预定范围内的感知信息和/或所述车辆所述第一预定范围内的地图信息。
在一些实施例中,所述感知信息包括道路信息和/或障碍物信息。
在一些实施例中,所述车辆的所述状态包括所述车辆的速度、所述车辆的加速度和/或所述车辆的方向盘的角度。
在一些实施例中,所述训练的驾驶动作模型由训练过程确定,所述训练过程包括:获取初始驾驶动作模型;获取初始样本驾驶信息,所述初始样本驾驶信息包括样本车辆第二预定范围内的初始样本感知信息和所述样本车辆所述第二预定范围内的初始样本地图信息;获取所述样本车辆的初始样本状态;基于所述初始样本驾驶信息、所述样本车辆的所述初始样本状态以及所述初始驾驶动作模型,确定初始样本驾驶动作;基于对应于所述初始样本驾驶动作的初始奖励值,确定与所述初始驾驶动作模型相关的初始样本评估值,其特征在于,所述初始奖励值与与所述初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离相关;确定所述初始样本评估值是否满足预设条件;以及响应于确定所述初始样本评估值满足所述预设条件,指定所述初始驾驶动作模型为所述训练的驾驶动作模型。
在一些实施例中,所述训练过程进一步包括:响应于确定所述初始样本评估值不满足所述预设条件,执行一个或以上迭代以更新所述初始驾驶动作模型,直到更新的样本评估值满足所述预设条件,其中所述一个或以上迭代中的每一个包括:基于先前迭代中的奖励值确定更新的驾驶动作模型;获取更新的样本驾驶信息;基于所述先前迭代中的样本驾驶动作和所述先前迭代中的所述样本车辆的样本状态,估计所述样本车辆的更新的样本状态;基于所述更新的样本驾驶信息、所述样本车辆的所述更新的样本状态以及所述更新的驾驶动作模型,确定更新的样本驾驶动作;基于对应于所述更新的样本驾驶动作的更新的奖励值和所述先前迭代中的样本评估值,确定与所述更新的驾驶动作模型相关的更新的样本评估值;以及确定所述更新的样本评估值是否满足所述预设条件。
在一些实施例中,所述训练的驾驶动作模型包括Q-学习神经网络模型。
在一些实施例中,基于所述一个或以上评估值从所述一个或以上候选驾驶动作中选择所述目标驾驶动作,进一步包括:根据预定规则,基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择所述目标驾驶动作。
本申请的又一方面涉及一种被配置为自动驾驶的车辆,包括:检测组件、规划组件和控制组件。所述规划组件被配置为:获取与车辆相关的驾驶信息;确定所述车辆的状态;基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值;基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作,;根据所述目标驾驶动作确定目标驾驶路径;以及将信号发送至所述车辆的所述控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
在一些实施例中,所述与车辆相关的驾驶信息包括所述车辆第一预定范围内的感知信息和/或所述车辆所述第一预定范围内的地图信息。
在一些实施例中,所述感知信息包括道路信息和/或障碍物信息。
在一些实施例中,所述车辆的所述状态包括所述车辆的速度、所述车辆的加速度和/或所述车辆的方向盘的角度。
在一些实施例中,所述训练的驾驶动作模型由训练过程确定,所述训练过程包括:获取初始驾驶动作模型;获取初始样本驾驶信息,所述初始样本驾驶信息包括样本车辆第二预定范围内的初始样本感知信息和所述样本车辆所述第二预定范围内的初始样本地图信息;获取所述样本车辆的初始样本状态;基于所述初始样本驾驶信息、所述样本车辆的所述初始样本状态以及所述初始驾驶动作模型,确定初始样本驾驶动作;基于对应于所述初始样本驾驶动作的初始奖励值,确定与所述初始驾驶动作模型相关的初始样本评估值,其特征在于,所述初始奖励值与与所述初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离相关;确定所述初始样本评估值是否满足预设条件;以及响应于确定所述初始样本评估值满足所述预设条件,指定所述初始驾驶动作模型作为所述训练的驾驶动作模型。
在一些实施例中,所述训练过程进一步包括:响应于确定所述初始样本评估值不满足所述预设条件,执行一个或以上迭代以更新所述初始驾驶动作模型,直到更新的样本评估值满足所述预设条件,其特征在于,所述一个或以上迭代中的每一个包括:基于先前迭代中的奖励值确定更新的驾驶动作模型;获取更新的样本驾驶信息;基于所述先前迭代中的样本驾驶动作和所述先前迭代中的所述样本车辆的样本状态,估计所述样本车辆的更新的样本状态;基于所述更新的样本驾驶信息、所述样本车辆的所述更新的样本状态以及所述更新的驾驶动作模型,确定更新的样本驾驶动作;基于对应于所述更新的样本驾驶动作的更新的奖励值和所述先前迭代中的样本评估值,确定与所述更新的驾驶动作模型相关的更新的样本评估值;以及确定所述更新的样本评估值是否满足所述预设条件。
在一些实施例中,所述训练的驾驶动作模型包括Q-学习神经网络模型。
在一些实施例中,基于所述一个或以上评估值从所述一个或以上候选驾驶动作中选择所述目标驾驶动作,所述规划组件进一步被配置为:根据预定规则,基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择所述目标驾驶动作。
本申请的又一方面涉及一种用于确定自动驾驶中驾驶动作的装置,包括至少一个处理器以及至少一个存储介质。所述至少一个存储介质用于存储计算机指令;所述至少一个处理器用于执行所述计算机指令中的至少部分指令以实现如上述所述的操作。
本申请的又一方面涉及一种非暂时计算机可读存储介质,所述存储介质存储有计算机指令,当所述计算机指令被至少一个处理器执行时,实现上述所述的操作。
本申请的一部分附加特性可以在下面的描述中进行说明。通过对以下描述和相应附图的研究或者对实施例的生产或操作的了解,本申请的一部分附加特性对于本领域技术人员是明显的。本申请的特征可以通过对以下描述的具体实施例的各种方面的方法、手段和组合的实践或使用得以实现和达到。.
附图说明
本申请将通过示例性实施例进行进一步描述。这些示例性实施例将通过附图进行详细描述。这些实施例是非限制性的示例性实施例,在这些实施例中,各图中相同的编号表示相似的结构,其中:
图1是根据本申请的一些实施例所示的示例性自动驾驶系统的示意图;
图2是根据本申请的一些实施例所示的示例性计算设备的示例性硬件和/或软件组件的示意图;
图3是根据本申请的一些实施例所示的示例性处理引擎的框图;
图4是根据本申请的一些实施例所示的用于确定目标驾驶路径的示例性过程的流程图;
图5是根据本申请的一些实施例所示的用于确定训练的驾驶动作模型的示例性过程的流程图。
图6是根据本申请的一些实施例所示的用于确定训练的驾驶动作模型的示例性过程的流程图。
图7是根据本申请的一些实施例所示的示例性驾驶动作的示意图;
图8是根据本申请的一些实施例所示的驾驶路径和至少两个障碍物之间的示例性综合距离的示意图;以及
图9是根据本申请的一些实施例所示的用于训练Q-学习神经网络模型的示例性过程的示意图。
具体实施方式
以下描述是为了使本领域的普通技术人员能够实施和利用本申请,并且该描述是在特定的应用场景及其要求的环境下提供的。对于本领域的普通技术人员来讲,显然可以对所公开的实施例作出各种改变,并且在不偏离本申请的原则和范围的情况下,本申请中所定义的普遍原则可以适用于其他实施例和应用场景。因此,本申请并不限于所描述的实施例,而应该被给予与权利要求一致的最广泛的范围。
本申请中所使用的术语仅用于描述特定的示例性实施例,并不限制本申请的范围。如本申请使用的单数形式“一”、“一个”及“该”可以同样包括复数形式,除非上下文明确提示例外情形。还应当理解,如在本申请中,术语“包括”、“包含”仅提示存在所述特征、整体、步骤、操作、组件和/或部件,但并不排除存在或添加一个或以上其他特征、整体、步骤、操作、组件、部件和/或其组合的情况。
根据以下对附图的描述,本申请的这些和其他的特征、特点以及相关结构元件的功能和操作方法,以及部件组合和制造经济性,可以变得更加显而易见,这些附图都构成本申请说明书的一部分。然而,应当理解的是,附图仅仅是为了说明和描述的目的,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例绘制的。
本申请中使用了流程图用来说明根据本申请的一些实施例的系统所执行的操作。应当理解的是,流程图中的操作可以不按顺序执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将一个或以上其他操作添加到这些流程图中。也可以从流程图中删除一个或以上操作。
此外,尽管本申请中公开的系统和方法主要涉及陆地中的运输系统,但应该理解,这仅是一个示例性实施例。本申请的系统和方法可以应用于任何其他类型的运输系统。例如,本申请的系统和方法可以应用于不同环境的运输系统,包括海洋、航空航天等或其任意组合。运输系统的车辆可包括汽车、公共汽车、火车、地铁、船只、飞机、宇宙飞船、热气球等或其任意组合。
本申请中使用的定位技术可以包括全球定位系统(GPS)、全球卫星导航系统(GLONASS)、北斗导航系统(COMPASS)、伽利略定位系统、准天顶卫星系统(QZSS)、无线保真(Wi-Fi)定位技术等或其任意组合。上述定位技术中的一种或以上可以在本申请中互换使用。
本申请的一个方面涉及用于确定自动驾驶中的驾驶动作的系统和方法。根据本申请的一些系统和方法,处理器可获取与车辆相关的驾驶信息(例如道路信息、障碍物信息、地图信息),确定车辆的状态(例如,速度、加速度、方向盘的角度),基于驾驶信息和车辆状态,使用训练完成的驾驶动作模型(例如,Q-学习神经网络模型),确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值,并基于一个或以上评估值,从一个或以上候选驾驶动作中选择目标驾驶动作。此外,根据本申请的一些系统和方法,处理器可以进一步基于目标驾驶动作确定目标驾驶路径,并且将信号发送至车辆的控制组件以引导车辆执行目标驾驶动作以遵循目标驾驶路径。根据本申请的系统和方法,驾驶动作是基于训练的模型确定的,其可以提高车辆的路径规划的准确性。
图1是根据本申请的一些实施例所示的示例性自动驾驶系统的示意图。在一些实施例中,自动驾驶系统100可包括服务器110、网络120、车辆130和存储器140。
在一些实施例中,服务器110可以是单个服务器,也可以是服务器组。服务器组可以是集中式的或分布式的(例如,服务器110可以是一分布式系统)。在一些实施例中,服务器110可以是本地的,也可以是远程的。例如,服务器110可以经由网络120访问存储在车辆130和/或存储器140中的信息和/或数据。又例如,服务器110可以直接连接到车辆130和/或存储器140以访问存储信息和/或数据。在一些实施例中,服务器110可以在云平台或车载计算机上实现。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。在一些实施例中,服务器110可以在计算设备200上实现,该计算设备200包括本申请中的图2中所示的一个或以上组件。
在一些实施例中,服务器110可以包括处理引擎112。处理引擎112可以处理与驾驶信息和/或车辆130的状态相关的信息和/或数据,以执行本申请中描述的一个或以上功能。例如,处理引擎112可以获取与车辆130相关的驾驶信息(例如,道路信息、障碍物信息)和/或车辆130的状态(例如,当前位置、当前速度)。处理引擎112可以基于驾驶信息和/或车辆130的状态确定驾驶动作(例如,“向左转”、“向右转”、“停止”)。也就是说,处理引擎112可以被配置为车辆130的规划组件。又例如,处理引擎112可以基于驾驶动作确定驾驶路径。作为另一示例,处理引擎112可基于驾驶路径确定控制指令(例如,速度控制指令、方向控制指令)。在一些实施例中,处理引擎112可包括一个或以上处理引擎(例如,单芯片处理引擎或多芯片处理引擎)。仅作为示例,处理引擎112可以包括中央处理单元(CPU)、特定应用集成电路(ASIC)、特定应用指令集处理器(ASIP)、图形处理单元(GPU)、物理处理单元(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑设备(PLD)、控制器、微控制器单元、精简指令集计算机(RISC)、微处理器等或其任意组合。
在一些实施例中,服务器110可以连接到网络120以与自动驾驶系统100的一个或以上组件(例如,车辆130、存储器140)通信。在一些实施例中,服务器110可以直接连接到自动驾驶系统100的一个或以上组件(例如,车辆130、存储器140)或与之通信。在一些实施例中,服务器110可以集成在车辆130中。例如,服务器110可以是安装在车辆130中的计算设备(例如,车载计算机)。
网络120可以促进信息和/或数据的交换。在一些实施例中,自动驾驶系统100的一个或以上组件(例如,服务器110、车辆130或存储器140)可以经由网络120将信息和/或数据发送至自动驾驶系统100的其他组件。例如,服务器110可以经由网络120获取与车辆130相关的驾驶信息和/或车辆130的状态。在一些实施例中,网络120可以为任意形式的有线或无线网络,或其任意组合。仅作为示例,网络120可以包括电缆网络、有线网络、光纤网络、电信网络、内部网络、互联网、局域网络(LAN)、广域网络(WAN)、无线局域网络(WLAN)、城域网(MAN)、公共交换电话网络(PSTN)、蓝牙网络、紫蜂网络、近场通讯(NFC)网络等或其任意组合。在一些实施例中,网络120可以包括一个或以上网络接入点。例如,网络120可以包括有线或无线网络接入点,通过该接入点,自动驾驶系统100的一个或以上组件可以连接到网络120以交换数据和/或信息。
车辆130可以是任何类型的自动车辆。自动车辆能够在没有人类操纵的情况下感测环境信息和导航。车辆130可包括传统车辆的结构。例如,车辆130可包括至少两个控制组件,其被配置为控制车辆130的操作。至少两个控制组件可包括转向设备(例如,方向盘)、制动设备(例如,制动踏板)、加速器等。转向设备可以被配置为调节车辆130的朝向和/或方向。制动设备可以被配置为执行制动操作以停止车辆130。加速器可以被配置为控制车辆130的速度和/或加速度。
车辆130还可以包括至少两个探测单元,其被配置为探测与车辆130相关的驾驶信息。至少两个探测单元可包括相机、全球定位系统(GPS)模块、加速度传感器(例如,压电传感器)、速度传感器(例如,霍尔传感器)、距离传感器(例如,雷达、LIDAR、红外传感器)、转向角传感器(例如,倾斜传感器)、牵引相关传感器(例如,力传感器)等。在一些实施例中,与车辆130相关的驾驶信息可包括车辆130一定范围内的感知信息(例如,道路信息、障碍物信息)、车辆130一定范围内的地图信息等。
存储器140可以储存数据和/或指令。在一些实施例中,存储器140可以存储从车辆130获取的数据,例如由至少两个探测单元获取的驾驶信息和/或车辆130的状态。在一些实施例中,储存器140可以储存服务器110用来执行或使用以完成本申请中描述的示例性方法的数据和/或指令。在一些实施例中,存储器140可包括大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)等或其任意组合。示例性的大容量存储器可以包括磁盘、光盘、固态磁盘等。示例性可移动存储器可以包括闪存驱动器、软盘、光盘、存储卡、压缩盘、磁带等。示例性易失性读写存储器可以包括随机存取存储器(RAM)。示例性RAM可包括动态随机存取存储器(DRAM)、双倍数据速率同步动态随机存取存储器(DDR SDRAM)、静态随机存取存储器(SRAM)、晶闸管随机存取存储器(T-RAM)和零电容随机存取存储器(Z-RAM)等。示例性只读存储器可以包括掩模型只读存储器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、光盘只读存储器(CD-ROM)和数字多功能磁盘只读存储器等。在一些实施例中,存储器140可在云平台上实现。仅作为示例,该云平台可以包括私有云、公共云、混合云、社区云、分布云、内部云、多层云等或其任意组合。
在一些实施例中,存储器140可以连接到网络120以与自动驾驶系统100的一个或以上组件(例如,服务器110、车辆130)通信。自动驾驶系统100的一个或以上组件可以经由网络120访问存储在存储器140中的数据或指令。在一些实施例中,存储器140可以直接连接到自动驾驶系统100的一个或以上组件(例如,服务器110和车辆130)或与之通信。在一些实施例中,存储器140可以是服务器110的一部分。在一些实施例中,存储器140可以集成在车辆130中。
应当注意自动驾驶系统100仅仅是为了说明的目的而提供,并不意图限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出多种修改或变化。例如,自动驾驶系统100还可以包括数据库、信息源等。又例如,自动驾驶系统100可以在其他设备上实现以实现类似或不同的功能。然而,变化和修改不会背离本申请的范围。
图2是根据本申请的一些实施例所示的示例性计算设备的示例性硬件和/或软件组件的示意图。在一些实施例中,服务器110可以在计算设备200上实现。例如,处理引擎112可以在计算设备200上实施并执行本申请所披露的处理引擎112的功能。
计算设备200可用于实现本申请的自动驾驶系统100的任何组件。例如,自动驾驶系统100的处理引擎112可以通过其硬件、软件程序、固件或其组合在计算设备200上实现。尽管为了方便仅示出了一个这样的计算机,但是与这里描述的自动驾驶系统100相关的计算机功能可以以分布式方式在多个类似平台上实现以分散处理负荷。
例如,计算设备200可以包括通信端口250,连接到与其连接的网络(例如,网络120),以促进数据通信。计算设备200还可以包括处理器(例如,处理器220),其形式为一个或以上处理器(例如,逻辑电路),用于执行程序指令。例如,处理器包括其中的接口电路和处理电路。接口电路可以被配置为从总线210接收电信号,其中电信号编码结构化数据和/或指令,用于处理电路的处理。处理电路可以进行逻辑计算,然后将结论、结果和/或指令编码确定为电信号。然后,接口电路可以经由总线210从处理电路发出电信号。
计算设备200还可以包括不同形式的程序存储和数据存储,例如磁盘270、只读存储器(ROM)230或随机存取存储器(RAM)240,用于存储由计算设备200处理和/或传输的各种数据文件。计算设备200还可以包括由处理器220执行的存储在ROM 230、RAM 240和/或其他类型的非暂时性存储介质中的程序指令。本申请的方法和/或流程可以以程序指令的方式实现。计算设备200还包括I/O组件260,其支持计算设备200与其中的其他组件之间的输入/输出。计算设备200也可以通过网络通信接收编程和数据。
仅仅为了说明,在计算设备200中仅描述了一个处理器。然而,应该注意的是,本申请中的计算设备200还可以包括多个处理器,因此由本申请中描述的一个处理器执行的操作也可以由多个处理器联合或单独执行。例如,计算设备200的处理器执行操作A和操作B。如在另一示例中,操作A和操作B也可以在计算设备200中由两个不同的处理器联合或分开执行(例如,第一处理器执行操作A,第二处理器执行操作B,或者第一和第二处理器共同执行操作A和B)。
图3是根据本申请的一些实施例所示的示例性处理引擎的框图。处理引擎112可包括获取模块310、状态确定模块320、候选驾驶动作确定模块330、目标驾驶动作确定模块340、目标驾驶路径确定模块350、传输模块360和训练模块370。
获取模块310可以被配置为获取与车辆(例如,车辆130)相关的驾驶信息。获取模块310可以从车辆的探测单元(例如,相机、雷达)、本申请中其他地方公开的存储设备(例如,存储器140)或外部资源(例如,交通指南平台、新闻平台)获取驾驶信息。获取模块310可以根据某个时间间隔(例如,0.01秒、0.02秒、0.05秒)、实时地或基本上实时地获取驾驶信息。关于驾驶信息的更多描述可以在本申请的其他地方找到(例如,图4及其描述)。
状态确定模块320可以被配置为确定车辆的状态。状态确定模块320可以根据某个时间间隔(例如,0.01秒、0.02秒、0.05秒)、实时地或基本上实时地确定车辆的状态。关于车辆状态的更多描述可以在本申请的其他地方找到(例如,图4及其描述)。
候选驾驶动作确定模块330可以被配置为基于驾驶信息和车辆状态,使用训练的驾驶动作模型确定一个或以上候选驾驶动作和对应于一个或以上候选驾驶动作的一个或以上评估值。关于驾驶动作的更多描述可以在本申请的其他地方找到(例如,图4及其描述)。
目标驾驶动作确定模块340可以被配置为基于一个或以上评估值,从一个或以上候选驾驶动作中选择目标驾驶动作。在一些实施例中,目标驾驶动作确定模块340可以从对应于一个或以上候选驾驶动作的一个或以上评估值中识别最高评估值,并选择对应于最高评估值的候选驾驶动作作为目标驾驶动作。在一些实施例中,目标驾驶动作确定模块340可以根据预定规则从一个或以上候选驾驶动作中选择目标驾驶动作。
目标驾驶路径确定模块350可以被配置为基于目标驾驶动作确定目标驾驶路径。例如,目标驾驶路径确定模块350可以基于与车辆相关的驾驶信息、车辆状态和目标驾驶动作确定至少两个候选驾驶路径。目标驾驶路径确定模块350可以进一步基于与至少两个候选驾驶路径中的每一个相关的一个或以上特征(例如,从候选驾驶路径到车道中心线的偏移、候选驾驶路径的行驶时间、候选驾驶路径的舒适度、候选驾驶路径与障碍物之间的距离等),从至少两个候选驾驶路径中选择目标驾驶路径。
传输模块360可以被配置为向车辆的一个或以上控制组件(例如,转向设备、制动设备、加速器)发送信号以引导车辆执行目标驾驶动作以遵循目标驾驶路径。例如,传输模块360可以确定与目标驾驶动作和目标驾驶路径相关的控制命令(例如,转向命令、加速命令),并将控制命令传输到一个或以上控制组件。
训练模块370可以被配置为基于与样本车辆相关的样本驾驶信息和样本车辆的样本状态确定训练的驾驶动作模型(例如,训练的Q-学习神经网络模型)。关于确定训练的驾驶动作模型的更多描述可以在本申请的其他地方找到(例如,图5-6及其描述)。
处理引擎112中的模块可以经由有线连接或无线连接彼此连接或通信。有线连接可以包括金属线缆、光缆、混合电缆等或其任意组合。无线连接可以包括局域网络(LAN)、广域网络(WAN)、蓝牙、紫蜂网络、近场通讯(NFC)等或其任意组合。两个或以上模块可以被组合为单个模块,以及模块中的任一个可以被分成两个或以上单元。例如,获取模块310和状态确定模块320可以组合为单个模块,其可以获取与车辆相关的驾驶信息和车辆的状态。又例如,候选驾驶动作确定模块330和目标驾驶动作确定模块340可以组合为单个模块,其可以确定一个或以上候选驾驶动作和目标驾驶动作。作为另一示例,处理引擎112可包括存储模块(未示出),其用于存储与车辆相关的信息和/或数据(例如,与车辆相关的驾驶信息、车辆的状态)。作为又一示例,训练模块370可以是不必要的,训练的驾驶动作模型可以从存储设备(例如,存储器140)获取,例如本申请中其他地方公开的存储设备。
图4是根据本申请的一些实施例所示的用于确定目标驾驶路径的示例性过程的流程图。过程400可以由自动驾驶系统100执行。例如,过程400可以实现为存储在存储器ROM230或RAM 240中的一组指令。处理器220和/或图3中的模块可以执行该组指令,并且当执行指令时,处理器220和/或模块可以被配置为执行过程400。以下所示过程的操作仅出于说明的目的。在一些实施例中,在完成过程400时,可以添加一个或以上未描述的附加操作,和/或删减一个或以上此处所讨论的操作。另外,图4中示出并在下面描述的过程400的操作的顺序并非限制性的。
在410中,处理引擎112(例如,获取模块310)(例如,处理器220的接口电路)可以获取与车辆(例如,车辆130)相关的驾驶信息。处理引擎112可以从车辆的探测单元(例如,相机、雷达)、本申请中其他地方公开的存储设备(例如,存储器140)或外部资源(例如,交通指南平台、新闻平台)获取驾驶信息。处理引擎112可以根据某个时间间隔(例如,0.01秒、0.02秒、0.05秒)、实时地或基本上实时地获取驾驶信息。
在一些实施例中,与车辆相关的驾驶信息可包括车辆第一预定范围内的感知信息、车辆第一预定范围内的地图信息等或其任意组合。第一预定范围可以是自动驾驶系统100的默认设置,或者可以在不同情况下可调节。例如,第一预定范围可以是以车辆的当前位置为中心的区域(例如,圆形、矩形、正方形、三角形、多边形)。
在一些实施例中,处理引擎112可以从车辆的探测单元(例如,相机、雷达)获取感知信息。感知信息可包括道路信息、障碍物信息等或其任意组合。道路信息可包括道路宽度、道路长度、道路类型(例如,高速公路、环形道路、辅路、立交桥、单向道路、双向道路)、车道信息、交通标志(例如,路标)、交通信号灯信息、人行横道信息等或其任意组合。障碍物信息可包括障碍物的类型(例如,车辆、行人、动物、建筑物、树木、路障)、障碍物的位置、障碍物的大小、障碍物的速度、车辆的当前位置与障碍物的位置之间的距离等或其任意组合。
在一些实施例中,处理引擎112可以从存储设备(例如,存储器140)获取地图信息,例如本申请中其他地方公开的那些。如本文所使用的,在一些实施例中,地图信息可以是包括在高精度地图(例如,HD地图)中的信息,其指示道路信息的高精度表达。
在420中,处理引擎112(例如,状态确定模块320)(例如,处理器220的处理电路)可以确定车辆的状态。处理引擎112可以根据某个时间间隔(例如,0.01秒、0.02秒、0.05秒等)、实时地或基本上实时地确定车辆的状态。
在一些实施例中,车辆的状态可包括车辆的当前位置、车辆的速度(例如,瞬时速度、预定时间段内的平均速度)、车辆的加速度(例如,瞬时加速度、预定时间段内的平均加速度)、车辆的方向盘的角度等或其任意组合。如本文所使用的,“速度”包括“幅度”信息和/或“方向”信息。例如,车辆的速度可以表示为“70km/h,30°”,表示速度的大小为70km/h,速度的方向是与水平方向成30°角的方向。类似地,“加速度”也包括“幅度”信息和/或“方向”信息。在一些实施例中,车辆的状态还可包括剩余功率、剩余汽油量、油温、气压、轮胎压力等。
在一些实施例中,处理引擎112可以从车辆的探测单元获取车辆的状态。例如,处理引擎112可以从加速度传感器获取车辆的加速度。又例如,处理引擎112可以从转向角传感器获取车辆方向盘的角度,该角度反映车辆的瞬时转向角。
在430中,处理引擎112(例如,候选驾驶动作确定模块330)(例如,处理器220的处理电路)可以基于驾驶信息和车辆状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于一个或以上候选驾驶动作的一个或以上评估值。如本文所使用的,对应于特定驾驶动作的评估值指的是体现对车辆行驶过程的综合奖励(也称为“预期奖励”)的值,该综合奖励与该特定驾驶动作相关。
在一些实施例中,驾驶动作可以表示与车辆的操作相关的动作。在一些实施例中,驾驶动作可以包括“停止”、“保持车道”、“跟随”、“向左转”、“向右转”、“向左轻推”、“向右轻推”等或其任意组合。如本文所使用的,“停止”是指停止车辆的动作,“保持车道”是指引导车辆沿车辆所在车道行驶的动作,“跟随”是指引导车辆跟随车辆前方的另一车辆的动作,“向左转”或“向右转”是指引导车辆从车辆所在车道左转(或右转)到与车辆所在车道平行的另一车道的动作,以及“向左轻推”或“向右轻推”指的是引导车辆左转(或右转)且不离开车辆所在车道的动作。如本文所使用的,“转”和“轻推”之间的区别在于在“转”动作(例如,“向左转”、“向右转”)下,车辆必须改变车道以避免与位于车辆前方的障碍物碰撞,然而,在“轻推”动作(例如,“向左轻推”、“向右轻推”)下,车辆不需要改变车道以避免与位于车辆前方的障碍物碰撞。关于驾驶动作的更多描述可以在本申请的其他地方找到(例如,图7及其描述)。
在一些实施例中,处理引擎112可以从训练模块370或本申请中其他地方公开的存储设备(例如,存储器140)获取训练的驾驶动作模型。在一些实施例中,训练的驾驶动作模型可以包括Q-学习神经网络模型。Q-学习神经网络模型可以是机器学习中使用的强化学习模型。关于训练的驾驶动作模型的更多描述可以在本申请的其他地方找到(例如,图5、6、9及其描述)。
在440中,处理引擎112(例如,目标驾驶动作确定模块340)(例如,处理器220的处理电路)可以基于一个或以上评估值从一个或以上候选驾驶动作中选择目标驾驶动作。
在一些实施例中,处理引擎112可以从对应于一个或以上候选驾驶动作的一个或以上评估值中识别最高评估值,并选择对应于最高评估值的候选驾驶动作作为目标驾驶动作。
在一些实施例中,处理引擎112可以根据一个或以上预定规则从一个或以上候选驾驶动作中选择目标驾驶动作。预定规则可以是自动驾驶系统100的默认设置,或者可以在不同情况下可调节。例如,可以假设处理引擎112确定了两个候选驾驶动作“向左转”和“向左轻推”,处理引擎112可以选择“向左轻推”作为目标驾驶动作,在该目标驾驶动作下车辆不需要改变车道。
在450中,处理引擎112(例如,目标驾驶路径确定模块350)(例如,处理器220的处理电路)可以基于目标驾驶动作确定目标驾驶路径。
在一些实施例中,处理引擎112可以基于与车辆相关的驾驶信息、车辆状态和目标驾驶动作确定至少两个候选驾驶路径。例如,处理引擎112可以基于目标驾驶动作定义目的地,根据曲线拟合方法,基于驾驶信息(例如道路信息)确定与车辆的当前位置和所定义的目的地相关的至少两条曲线。进一步地,处理引擎112可以选择不与障碍物碰撞的曲线作为至少两个候选驾驶路径。又例如,处理引擎112可以根据机器学习模型(例如,人工神经网络模型、支持向量机(SVM)模型、决策树模型),基于与车辆相关的驾驶信息、车辆的状态和目标驾驶动作确定至少两个候选驾驶路径。关于确定候选驾驶路径的更多描述可以在2017年7月13日提交的国际申请PCT/CN2017/092714中找到,其全部内容通过引用以其整体并入本文。
在一些实施例中,可以基于某些限制执行候选驾驶路径的生成。在某些实施例中,限制可以基于目标驾驶动作。例如,如果选择“向左转”作为目标驾驶动作,则这种选择自动提供关于可以生成何种候选驾驶路径的限制。
确定至少两个候选驾驶路径后,处理引擎112可以基于与至少两个候选驾驶路径中的每一个相关的一个或以上特征(例如,从候选驾驶路径到车道中心线的偏移、候选驾驶路径的行驶时间、候选驾驶路径的舒适度、候选驾驶路径与障碍物之间的距离等),从至少两个候选驾驶路径中选择目标驾驶路径。如本文所使用的,舒适度可以与对应于候选驾驶路径上的至少两个点的至少两个加速度相关。例如,假设至少两个加速度中的每一个都小于第一加速度阈值(例如,3m/s2),则舒适度可以被指定为1,然而,假设高于第二加速度阈值(例如,10m/s2)的加速度百分比大于阈值百分比(例如,50%、60%、70%),则舒适度可以指定为0。相应地,大于第二加速度阈值的加速度百分比越高,样本驾驶路径的舒适度可能越低。
例如,处理引擎112可以将从候选驾驶路径到车道中心线的偏移小于偏移阈值的候选驾驶路径确定为目标驾驶路径。又例如,处理引擎112可以将行驶时间小于时间阈值的候选驾驶路径确定为目标驾驶路径。作为另一示例,处理引擎112可以将舒适度大于水平阈值的候选驾驶路径确定为目标驾驶路径。作为又一示例,处理引擎112可以将候选驾驶路径与障碍物之间的距离小于距离阈值的候选驾驶路径确定为目标驾驶路径。
在一些实施例中,处理引擎112可以基于与至少两个候选驾驶路径中的每一个相关的行程成本,从至少两个候选驾驶路径选择目标驾驶路径。例如,处理引擎112可以从对应于至少两个候选驾驶路径的至少两个行程成本中识别最小行程成本,并且将与最小行程成本相对应的候选驾驶路径识别为目标驾驶路径。
在一些实施例中,处理引擎112可以确定一个或以上成本因素,并基于一个或以上成本因素和一个或以上系数确定至少两个候选行驶路径中的每一个候选行驶路径的出行成本。以特定候选行驶路径为例,处理引擎112可根据下述公式(1)确定特定候选行驶路径的出行成本:
其中,Fcost是指特定候选行驶路径的出行成本,ci是指特定候选行驶路径的第i个成本因素,wi是指与第i个成本因素相对应的第i个系数,n是指一个或以上成本因素的数量。
在一些实施例中,一个或以上成本因素可包括速度成本因素、相似度成本因素、曲率成本因素等。如本文所使用的,以特定候选行驶路径为例,速度成本因素表示特定候选行驶路径上的至少两个点之间的速度差信息;相似度成本因素表示特定候选行驶路径和先前时间点对应的先前目标行驶路径之间的相似度信息;曲率成本因素表示与特定候选行驶路径相关的平滑度信息。
在一些实施例中,处理引擎112可以根据下述公式(2)确定速度成本因素:
其中,Scost是指速度成本因素,vi指特定候选者行驶路径上的第i个点的速度,vi+1指特定候选行驶路径上的第(i+1)个点的速度,以及m指特定候选行驶路径上的至少两个点的数量。在一些实施例中,特定候选行驶路径上的两个相邻点(即第i点和第(i+1)点)之间的时间间隔可以是自动驾驶系统100的默认设置(例如,5ms,10ms,15ms,20ms),或者可以在不同情况下进行调整。
在一些实施例中,处理引擎112可以根据下述公式(3)确定相似度成本因素:
其中,Similaritycost是指相似度成本因素,(xi,yi)是指特定候选行驶路径上的第i个点,(xj′,yj′)是指对应于先前时间点的先前目标行驶路径上的第j个点(其中第j个点是指对应于先前时间点的先前目标行驶路径上的距离候选行驶路径上第i个点的最近点),p是指特定候行驶路径和对应于先前时间点的先前目标行驶路径的重叠部分内的点的数量。
在一些实施例中,处理引擎112可以基于特定候选行驶路径的全局曲率确定曲率成本因素。例如,处理引擎112可以确定特定候选行驶路径上的每个点的曲率,并且确定与特定候选行驶路径上的至少两个点相对应的至少两个曲率的总和作为全局曲率。又例如,处理引擎112可以确定与特定候选行驶路径上的至少两个点相对应的至少两个曲率的平均值(或加权平均值)作为全局曲率。
进一步地,处理引擎112可以基于对应于至少两个候选行驶路径的至少两个出行成本,从至少两个候选行驶路径中识别目标行驶路径。在一些实施例中,处理引擎112可以从至少两个出行成本中识别最小出行成本,并将对应于最小出行成本的候选行驶路径识别为目标行驶路径。
关于确定目标驾驶路径的更多描述可以在,例如,同一天提交的题为“用于确定自动驾驶中的驾驶路径的系统和方法”的中国申请2018_______._中找到,其内容通过引用方式结合于此。
在460中,处理引擎112(例如,传输模块360)(例如,处理器220的接口电路)可以将信号发送至车辆的一个或以上控制组件(例如,转向设备、制动设备、加速器)以指示车辆执行目标驾驶动作以遵循目标驾驶路径。例如,处理引擎112可以确定与目标驾驶动作和目标驾驶路径相关的控制命令(例如,转向命令、加速命令),并将控制命令发送至一个或以上控制组件。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,可以根据本申请的描述,做出多种变化和修改。然而,变化和修改不会背离本申请的范围。
例如,处理引擎112可以基于与车辆相关的驾驶信息、车辆的状态以及在操作430中确定的一个或以上候选驾驶动作,确定至少两组候选驾驶路径,其中至少两组候选驾驶路径中的每一组对应于一个候选驾驶动作。进一步地,处理引擎112可以根据操作450从至少两组候选驾驶路径中确定目标驾驶路径。又例如,可以在过程400中的其他地方添加一个或以上其他可选操作(例如,存储操作)。在存储操作中,处理引擎112可以在本申请中其他地方公开的存储器(例如,存储器140)中存储与车辆相关的信息和/或数据(例如,与车辆相关的驾驶信息、车辆的状态、候选驾驶动作、候选驾驶路径)。作为另一示例,可以同时执行操作410和操作420。
图5是根据本申请的一些实施例所示的用于确定训练的驾驶动作模型的示例性过程的流程图。过程500可以由自动驾驶系统100执行。例如,过程500可以实现为存储在存储器ROM 230或RAM 240中的一组指令。处理器220和/或训练模块370可以执行该组指令,并且当执行指令时,处理器220和/或训练模块370可以被配置为执行过程500。以下所示过程的操作仅出于说明的目的。在一些实施例中,在完成过程500时,可以添加一个或以上未描述的附加操作和/或删减一个或以上此处所讨论的操作。另外,图5中示出并在下面描述的过程500的操作的顺序并非限制性的。
在510中,处理引擎112(例如,训练模块370)(例如,处理器220的接口电路或处理电路)可以获取初始驾驶动作模型(例如,初始Q-学习神经网络模型)。处理引擎112可以经由网络120从本申请中其他地方公开的存储设备(例如,存储器140)和/或外部数据源(未示出)中获取初始驾驶动作模型。初始驾驶动作模型可以包括一个或以上初始参数,其可以是自动驾驶系统100的默认设置或者可以在不同情况下可调节。
在520中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以获取与样本车辆相关的初始样本驾驶信息。在一些实施例中,样本车辆具有与车辆130类似的特征(例如,车辆类型、车辆模型、车辆年份、车辆重量、发动机功率)。
如结合操作410所述,与样本车辆相关的初始样本驾驶信息可以包括样本车辆第二预定范围内的初始样本感知信息、样本车辆第二预定范围内的初始样本地图信息等或其任意组合。在一些实施例中,结合操作410所描述,第二预定范围可以与第一预定范围相同或不同。初始样本感知信息可包括初始样本道路信息、初始样本障碍物信息等或其任意组合。在一些实施例中,与样本车辆相关的初始样本驾驶信息可以是自动驾驶系统100的默认设置,或者可以在不同情况下可调节。
在530中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以获取样本车辆的初始样本状态。
如结合操作420所述,样本车辆的初始样本状态可包括样本车辆的初始样本速度(例如,初始样本瞬时速度、预定时间段内的初始样本平均速度)、样本车辆的初始样本加速度(例如,初始样本瞬时加速度、预定时间段内的初始样本平均加速度)、样本车辆的方向盘的初始样本角等或其任意组合。在一些实施例中,样本车辆的初始样本状态还可包括初始样本剩余功率、初始样本剩余汽油量、初始样本油温、初始样本气压、初始样本轮胎压力等。在一些实施例中,样本车辆的初始状态可以是自动驾驶系统100的默认设置,或者可以在不同情况下可调节。
在540中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以基于初始样本驾驶信息、样本车辆的初始样本状态和初始驾驶动作模型确定初始样本驾驶动作。如结合操作430所述,初始样本驾驶动作可以包括“停止”、“保持车道”、“跟随”、“向左转”、“向右转”、“向左轻推”、“向右轻推”等或其任意组合。例如,假设驾驶信息指示在样本车辆前面存在障碍物,处理引擎112可以根据初始驾驶动作模型确定初始样本驾驶动作“向左转”或“向左轻推”。
在550中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以基于对应于初始样本驾驶动作的初始奖励值,确定与初始驾驶动作模型相关的初始样本评估值。如本文所使用的,以特定样本驾驶动作为例,对应于该特定样本驾驶动作的奖励值可以是用于评估该特定样本驾驶动作对样本车辆的驾驶过程的贡献的参数。同时以特定的迭代中的特定样本驾驶动作为例,对应于该特定样本驾驶动作的评估值可以是截止到该特定迭代为止,体现对样本车辆的驾驶过程的综合奖励(也称为“预期奖励”)的值,该综合奖励与该特定样本驾驶动作相关。
在一些实施例中,初始奖励值可以与与初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离相关。在一些实施例中,初始奖励值可以与连接到紧接在前的驾驶路径的初始样本驾驶路径的平滑度相关。在一些实施例中,初始奖励值可以与初始样本驾驶路径的舒适度相关。在一些实施例中,如结合操作450所述,处理引擎112可基于初始样本驾驶动作确定初始样本驾驶路径。在一些实施例中,与初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离越长,初始奖励值可能越高。在一些实施例中,平滑度越高,初始奖励值可能越高。在一些实施例中,舒适度越高,初始奖励值可能越高。
在一些实施例中,处理引擎112可以确定与初始样本驾驶路径相关的感知区域,并确定初始样本驾驶路径与感知区域中的障碍物之间的距离。感知区域的大小可以是自动驾驶系统100的默认设置(例如,50cm×50cm、100cm×100cm、200cm×200cm、500cm×500cm、1000cm×1000cm),或者可以在不同情况下可调节。如本文所使用的,初始样本驾驶路径与感知区域中的障碍物之间的距离可以是初始样本驾驶路径与障碍物之间的最短距离。对于本领域的普通技术人员来说,障碍物具有一定的尺寸。以俯视图为例,可以认为障碍物包括至少两个点,并且至少两个点中的每一个都对应于一个到初始样本驾驶路径的距离。“最短距离”是指对应于至少两个点的至少两个距离中的最短距离。
在一些实施例中,在感知区域中可能存在至少两个障碍物。在这种情况下,处理引擎112可以确定初始样本驾驶路径与至少两个障碍物中的每一个之间的候选距离(为最短距离),并且基于对应于至少两个障碍物的至少两个候选距离,确定初始样本驾驶路径与至少两个障碍物之间的综合距离。例如,处理引擎112可以将对应于至少两个障碍物的至少两个候选距离的最短候选距离识别为初始样本驾驶路径与至少两个障碍物之间的综合距离。又例如,处理引擎112可将至少两个候选距离的平均值或加权平均值确定为初始样本驾驶路径与至少两个障碍物之间的综合距离。关于确定初始样本驾驶路径与障碍物之间的距离的更多描述可以在本申请的其他地方找到(例如,图8及其描述)。
在一些实施例中,处理引擎112可以定义特定范围(例如,0~1),将与初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离映射到特定范围,并指定相应的映射值作为对应于初始驾驶动作的初始奖励值。例如,假设与初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离大于第一距离阈值(例如,0.5米),处理引擎112可以确定对应于初始样本驾驶动作的初始奖励值是1;然而,假设与初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离小于第二距离阈值(例如,0.01m),处理引擎112可以确定对应于初始样本驾驶动作的初始奖励值是0。相应地,与初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离越长,与初始样本驾驶动作相对应的初始奖励值可能越高。第一距离阈值和/或第二距离阈值可以是自动驾驶系统100的默认设置,或者可以在不同情况下可调节。
在一些实施例中,处理引擎112可以根据以下公式(4),基于动作效用函数(也称为Q函数)确定与初始驾驶动作模型相关的初始样本评估值:
Q′(s,a)=Q(s,a)+α(ri,t+λQ*(s,a)) (4)
其中a指的是第i次迭代中的样本驾驶动作;s指的是第i次迭代中样本车辆的样本状态;Q′(s,a)指的是与第i次迭代中的驾驶动作模型相关的样本评估值;
Q(s,a)指的是与先前迭代中的驾驶动作模型相关的样本评估值(在第一次迭代中,样本评估值可以是默认值);Q*(s,a)指的是对应于第i次迭代的与驾驶动作模型相关的最优样本评估值;α指的是学习率;ri,t指的是在第i次迭代中对应于样本驾驶动作的奖励值;以及λ指的是折扣因子(例如,0~1内的值)。在一些实施例中,学习率和/或折扣因子可以是自动驾驶系统100的默认设置,或者可以在不同情况下可调节。在一些实施例中,可以基于在至少两个先前迭代中确定的至少两个样本评估值确定对应于第i次迭代的最优样本评估值。例如,最优评估值可以是在至少两个先前迭代中确定的至少两个样本评估值的平均值。又例如,最优评估值可以是在至少两个先前迭代中确定的至少两个样本评估值中的最高样本评估值。
在560中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以确定初始样本评估值是否满足预设条件。
在一些实施例中,处理引擎112可以确定初始样本评估值是否高于第一阈值。响应于确定初始样本评估值高于第一阈值,处理引擎112可以确定初始样本评估值满足预设条件。响应于确定初始样本评估值小于或等于第一阈值,处理引擎112可以确定初始样本评估值不满足预设条件。
在一些实施例中,处理引擎112可以确定迭代次数是否高于第二阈值。响应于确定迭代次数高于第二阈值,处理引擎112可以确定初始样本评估值满足预设条件。响应于确定迭代次数小于或等于第二阈值,处理引擎112可以确定初始样本评估值不满足预设条件。第一阈值和/或第二阈值可以是自动驾驶系统100的默认设置,或者可以在不同情况下可调节。
在一些实施例中,处理引擎112可以确定初始驾驶动作模型的损失函数,并基于初始样本评估值确定损失函数的值。进一步地,处理引擎112可以确定损失函数的值是否小于损失阈值。响应于确定损失函数的值小于损失阈值,处理引擎112可以确定初始样本评估值满足预设条件。响应于确定损失函数的值大于或等于损失阈值,处理引擎112可以确定初始样本评估值不满足预设条件。
响应于确定初始样本评估值满足预设条件,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以在570中将初始驾驶动作模型指定为训练的驾驶动作模型。
响应于确定初始样本评估值不满足预设条件,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以执行过程500到操作580以执行一个或以上迭代以更新初始驾驶动作模型,直到更新的样本评估值满足预设条件。下面在图6中描述一个示例性迭代过程。
在610中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以基于先前迭代中的奖励值确定更新的驾驶动作模型。
在一些实施例中,处理引擎112可以通过更新先前迭代中的驾驶动作模型的一个或以上参数(例如,初始驾驶动作模型的一个或以上初始参数)确定更新的驾驶动作模型,其中,在更新的一个或以上参数下,奖励值和/或样本评估值可以是提升的。
在620中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以获取与样本车辆相关的更新的样本驾驶信息。
在630中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以基于先前迭代中的样本驾驶动作和先前迭代中的样本车辆的样本状态估计样本车辆的更新的样本状态。
在一些实施例中,处理引擎112可以根据仿真模型,基于先前迭代中的样本驾驶动作和先前迭代中的样本车辆的样本状态,估计样本车辆的更新的样本状态。在一些实施例中,仿真模型可以配置样本车辆的一个或以上特征(例如,车辆类型、车辆重量、车辆模型、车辆年份、发动机功率、制动效率)、道路信息、障碍物信息、地图信息等或其任意组合。处理引擎112可以基于仿真模型模拟样本车辆的操作,并且基于仿真结果确定样本车辆的更新的样本状态。
在640中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以基于更新的样本驾驶信息、样本车辆的更新的样本状态和更新的驾驶动作模型确定更新的样本驾驶动作。例如,处理引擎112可以将更新的样本驾驶信息和样本车辆的更新的样本状态输入到更新的驾驶动作模型中。处理引擎112可以基于更新的驾驶动作模型的输出确定更新的样本驾驶动作。
在650中,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以基于先前迭代中对应于更新的样本驾驶动作的更新的奖励值以及样本评估值,确定与更新的驾驶动作模型相关的更新的样本评估值。例如,处理引擎112可以根据公式(1)确定更新的样本评估值。
在660中,如结合操作560所述,处理引擎112(例如,训练模块370)(例如,处理器220的处理电路)可以确定更新的样本评估值是否满足预设条件。
在一些实施例中,处理引擎112还可以确定更新的驾驶动作模型是否是收敛的。例如,处理引擎112可以确定更新的样本评估值和先前迭代中的样本评估值之间的差值是否小于差值阈值。响应于确定差值小于差值阈值,处理引擎112可以确定更新的驾驶动作模型是收敛的,进而,处理引擎112可以确定更新的样本评估值满足预设条件。响应于确定差值大于或等于差值阈值,处理引擎112可以确定更新的样本评估值不满足预设条件。
响应于确定更新的样本评估值满足预设条件,处理引擎112可以在670中将更新的驾驶动作模型指定为训练的驾驶动作模型。
响应于确定更新的样本评估值不满足预设条件,处理引擎112可执行过程600以返回操作610以更新更新的驾驶动作模型(即,开始下一次迭代),直到更新的样本评估值满足预设条件。
需要注意的是,以上描述仅为描述方便,并不能把本申请限制在所举实施例范围之内。对于本领域的普通技术人员来说,可以根据本申请的描述,做出多种变化和修改。然而,这些变化和修改不会背离本申请的范围。例如,可以在过程500和/或过程600中的其他地方添加一个或以上其他可选操作(例如,存储操作)。在存储操作中,处理引擎112可以在本申请中其他地方公开的存储设备(例如,存储器140)中存储与样本车辆相关的信息和/或数据(例如,样本驾驶信息、样本车辆的样本状态)。又例如,可以同时执行操作520和操作530。作为另一示例,可以同时执行操作620和操作630。作为又一示例,在操作540中,处理引擎112可以随机选择驾驶动作作为初始样本驾驶动作。作为又一个示例,初始奖励值可以与初始样本驾驶路径的其他特征(例如,行驶时间)相关。
图7是根据本申请的一些实施例所示的示例性驾驶动作的示意图。如图所示,包括车道1、车道2和车道3的道路情景作为示例进行描述,其中车道1平行于车道2并且车道3垂直于车道1和车道2。进一步地,701指的是车辆,702指的是其前面的另一车辆。740和760指的是障碍物。曲线710指的是与驾驶动作“跟随”(其指的是引导车辆701跟随其前方的车辆702的动作)相关的驾驶路径。曲线720指的是与驾驶动作“保持车道”(其指的是引导车辆701沿着车道2行驶的动作)相关的驾驶路径。曲线730指的是与驾驶动作“向左轻推”(其指的是引导车辆701在不离开车道2的情况下向左转弯的动作)相关的驾驶路径。在这种情况下,车辆701可以在不离开车道2的情况下避免与障碍物750碰撞。曲线740指的是与驾驶动作“向左转”(其指的是引导车辆701从车道2左转到车道1的动作)相关的驾驶路径。在这种情况下,为了避免与障碍物760的碰撞,车辆701需要从车道2变为车道1。
另外,假设处理引擎112确定车辆701需要从车道1改变到车道3,处理引擎112可以分别确定在车道1上的驾驶动作“保持车道”以及在车道3上的驾驶动作“保持车道”,而不是“向左转”或“向左轻推”。
图8是根据本申请的一些实施例所示的驾驶路径和至少两个障碍物之间的示例性综合距离的示意图。如图所示,曲线810指的是车辆860的驾驶路径。可以看出,在车辆860的感知区域820内,驾驶路径810周围存在至少两个障碍物(例如,障碍物830、障碍物840和障碍物850)。处理引擎112可以确定驾驶路径810与感知区域中的至少两个障碍物中的每一个之间的候选距离。例如,处理引擎112可以确定驾驶路径810与障碍物830之间的候选距离L1、驾驶路径810与障碍物840之间的候选距离L2,以及驾驶路径810与障碍物850之间的候选距离L3。处理引擎112可以进一步基于三个候选距离确定驾驶路径810与至少两个障碍物之间的综合距离。例如,处理引擎112可以将三个距离中的最短候选距离(即,驾驶路径810和障碍物850之间的候选距离L3)确定为驾驶路径810与至少两个障碍物之间的综合距离。又例如,处理引擎112可以将三个候选距离的平均值(即(L1+L2+L3/3)确定为驾驶路径810与至少两个障碍物之间的综合距离。
图9是根据本申请的一些实施例所示的用于训练Q-学习神经网络模型的示例性过程的示意图。
如图9所示,“环境”是指样本车辆所处的场景,我们可以假设“环境”是陆地交通场景。根据本申请,已知训练过程包括一个或以上的迭代,这里描述第i次迭代作为示例。具体地,处理引擎112可以在时间点t确定样本车辆的样本状态st(例如,位置、速度)。处理引擎112可以根据第i次迭代中的Q-学习神经网络模型,基于样本车辆的样本状态st(为方便起见,此处省略了样本驾驶信息),为样本车辆确定对应于时间点t的样本驾驶动作at。进一步地,处理引擎112可以确定对应于样本驾驶动作at的奖励值rt,并且同时或相继地,处理引擎112可以确定与对应于样本驾驶动作at的Q-学习神经网络模型相关的样本评估值Qt′(st,at)。结合操作560所描述的,处理引擎112可以确定样本评估值Qt′(st,at)是否满足预设条件。响应于确定样本评估值Qt′(st,at)满足预设条件,处理引擎112可以将第i次迭代中的Q-学习神经网络模型指定为最终训练的Q-学习神经网络模型。响应于确定样本评估值Qt′(st,at)不满足预设条件,处理引擎112可以开始下一次迭代,直到更新的样本评估值满足预设条件。
上文已对基本概念做了描述,显然,对于阅读此申请后的本领域的普通技术人员来说,上述披露仅作为示例,并不构成对本申请的限制。虽然此处并未明确说明,但本领域的普通技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。例如“一个实施例”、“一实施例”和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特性。因此,应当强调并注意的是,本说明书中在不同位置两次或以上提及的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或以上实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的过程、机器、产品或物质的组合,或对其任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括韧体、常驻软件、微代码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可被称为“单元”、“模块”或“系统”。此外,本申请的各方面可以采取体现在一个或以上计算机可读介质中的计算机程序产品的形式,其中计算机可读程序代码包含在其中。
计算机可读信号介质可能包含一个内含有计算机程序代码的传播数据信号,例如在基带上或作为载波的一部分。此类传播信号可以有多种形式,包括电磁形式、光形式等或任何合适的组合。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通信、传播或传输供使用的程序。位于计算机可读信号介质上的程序代码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF等,或任何上述介质的组合。
本申请各部分操作所需的计算机程序代码可以用任意一种或以上程序设计语言编写,包括面向对象程序设计语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化程序设计语言如C程序设计语言、Visual Basic、Fortran2103、Perl、COBOL 2102、PHP、ABAP,动态程序设计语言如Python、Ruby和Groovy,或其他程序设计语言等。该程序代码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。例如,尽管上述各种组件的实现可以体现在硬件设备中,它也可以实现为仅软件解决方案,例如,在现有服务器或移动设备上的安装。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或以上发明实施例的理解,前文对本申请的实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。然而,本申请的该方法不应被解释为反映所声称的待扫描对象物质需要比每个权利要求中明确记载的更多特征的意图。相反,发明的主体应具备比上述单一实施例更少的特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本申请一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
本文中提及的所有专利、专利申请、专利申请公布和其他材料(如论文、书籍、说明书、出版物、记录、事物和/或类似的东西)均在此通过引用的方式全部并入本文以达到所有目的,与上述文件相关的任何起诉文档记录、与本文件不一致或冲突的任何上述文件或对迟早与本文件相关的权利要求书的广泛范畴有限定作用的任何上述文件除外。举例来说,如果在描述,定义和/或与任何所结合的材料相关的术语的使用和与本文件相关的术语之间存在任何不一致或冲突,则描述,定义和/或在本文件中使用的术语以本文件为准。
最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可能属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不仅限于本申请明确介绍和描述的实施例。
Claims (27)
1.一种用于确定自动驾驶中驾驶动作的系统,包括:
获取模块,用于获取与车辆相关的驾驶信息;
状态确定模块,用于确定所述车辆的状态;
候选驾驶动作确定模块,用于基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值,在所述训练的驾驶动作模型的训练过程中,
基于初始样本驾驶动作的初始奖励值,确定与初始驾驶动作模型相关的初始样本评估值,所述初始奖励值与驾驶路径与障碍物之间的距
离、驾驶路径的平滑度和/或驾驶路径的舒适度相关;
所述初始样本评估值不满足预设条件,执行迭代更新;
基于先前迭代中对应于更新的样本驾驶动作的更新的奖励值以及样本评估值,确定与更新的驾驶动作模型相关的更新的样本评估值;
所述更新的样本评估值满足预设条件,模型训练结束;
目标驾驶动作确定模块,用于基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作;
目标驾驶路径确定模块,用于基于据所述目标驾驶动作确定目标驾驶路径;以及
传输模块,用于将信号发送至所述车辆的控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
2.根据权利要求1所述的系统,其特征在于,所述与车辆相关的驾驶信息包括所述车辆第一预定范围内的感知信息和所述车辆所述第一预定范围内的地图信息。
3.根据权利要求2所述的系统,其特征在于,所述感知信息包括道路信息和障碍物信息。
4.根据权利要求1所述的系统,其特征在于,所述车辆的所述状态包括所述车辆的速度、所述车辆的加速度以及所述车辆的方向盘的角度。
5.根据权利要求1-4中任一项所述的系统,其特征在于,还包括训练模块,所述训练模块用于:
获取初始驾驶动作模型;
获取初始样本驾驶信息,所述初始样本驾驶信息包括样本车辆第二预定范围内的初始样本感知信息和所述样本车辆所述第二预定范围内的初始样本地图信息;
获取所述样本车辆的初始样本状态;
基于所述初始样本驾驶信息、所述样本车辆的所述初始样本状态以及所述初始驾驶动作模型,确定初始样本驾驶动作;
基于对应于所述初始样本驾驶动作的初始奖励值,确定与所述初始驾驶动作模型相关的初始样本评估值,其特征在于,所述初始奖励值与与所述初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离相关;
确定所述初始样本评估值是否满足预设条件;以及
响应于确定所述初始样本评估值满足所述预设条件,指定所述初始驾驶动作模型作为所述训练的驾驶动作模型。
6.根据权利要求5所述的系统,其特征在于,所述训练模块进一步用于:
响应于确定所述初始样本评估值不满足所述预设条件,执行一个或以上迭代以更新所述初始驾驶动作模型,直到更新的样本评估值满足所述预设条件,其特征在于,所述一个或以上迭代中的每一个包括:
基于先前迭代中的奖励值确定更新的驾驶动作模型;
获取更新的样本驾驶信息;
基于所述先前迭代中的样本驾驶动作和所述先前迭代中的所述样本车辆的样本状态,估计所述样本车辆的更新的样本状态;
基于所述更新的样本驾驶信息、所述样本车辆的所述更新的样本状态以及所述更新的驾驶动作模型,确定更新的样本驾驶动作;
基于对应于所述更新的样本驾驶动作的更新的奖励值和所述先前迭代中的样本评估值,确定与所述更新的驾驶动作模型相关的更新的样本评估值;以及
确定所述更新的样本评估值是否满足所述预设条件。
7.根据权利要求1所述的系统,其特征在于,所述训练的驾驶动作模型包括Q-学习神经网络模型。
8.根据权利要求1所述的系统,其特征在于,为了基于所述一个或以上评估值从所述一个或以上候选驾驶动作中选择所述目标驾驶动作,所述目标驾驶动作确定模块进一步用于:
根据预定规则,基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择所述目标驾驶动作。
9.一种确定自动驾驶中驾驶动作的方法,所述方法包括:
获取与车辆相关的驾驶信息;
确定所述车辆的状态;
基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值,在所述训练的驾驶动作模型的训练过程中,
基于初始样本驾驶动作的初始奖励值,确定与初始驾驶动作模型相关的初始样本评估值,所述初始奖励值与驾驶路径与障碍物之间的距
离、驾驶路径的平滑度和/或驾驶路径的舒适度相关;
所述初始样本评估值不满足预设条件,执行迭代更新;
基于先前迭代中对应于更新的样本驾驶动作的更新的奖励值以及样本评估值,确定与更新的驾驶动作模型相关的更新的样本评估值;
所述更新的样本评估值满足预设条件,模型训练结束;
基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作;
基于所述目标驾驶动作确定目标驾驶路径;以及
将信号发送至所述车辆的控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
10.根据权利要求9所述的方法,其特征在于,所述与车辆相关的驾驶信息包括所述车辆第一预定范围内的感知信息和所述车辆所述第一预定范围内的地图信息。
11.根据权利要求10所述的方法,其特征在于,所述感知信息包括道路信息和障碍物信息。
12.根据权利要求9所述的方法,其特征在于,所述车辆的所述状态包括所述车辆的速度、所述车辆的加速度和所述车辆的方向盘的角度。
13.根据权利要求9-12中任一项所述的方法,其特征在于,所述训练的驾驶动作模型由训练过程确定,所述训练过程包括:
获取初始驾驶动作模型;
获取初始样本驾驶信息,所述初始样本驾驶信息包括样本车辆第二预定范围内的初始样本感知信息和所述样本车辆所述第二预定范围内的初始样本地图信息;
获取所述样本车辆的初始样本状态;
基于所述初始样本驾驶信息、所述样本车辆的所述初始样本状态以及所述初始驾驶动作模型,确定初始样本驾驶动作;
基于对应于所述初始样本驾驶动作的初始奖励值,确定与所述初始驾驶动作模型相关的初始样本评估值,其特征在于,所述初始奖励值与与所述初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离相关;
确定所述初始样本评估值是否满足预设条件;以及
响应于确定所述初始样本评估值满足所述预设条件,指定所述初始驾驶动作模型为所述训练的驾驶动作模型。
14.根据权利要求13所述的方法,其特征在于,所述训练过程进一步包括:
响应于确定所述初始样本评估值不满足所述预设条件,执行一个或以上迭代以更新所述初始驾驶动作模型,直到更新的样本评估值满足所述预设条件,其中所述一个或以上迭代中的每一个包括:
基于先前迭代中的奖励值确定更新的驾驶动作模型;
获取更新的样本驾驶信息;
基于所述先前迭代中的样本驾驶动作和所述先前迭代中的所述样本车辆的样本状态,估计所述样本车辆的更新的样本状态;
基于所述更新的样本驾驶信息、所述样本车辆的所述更新的样本状态以及所述更新的驾驶动作模型,确定更新的样本驾驶动作;
基于对应于所述更新的样本驾驶动作的更新的奖励值和所述先前迭代中的样本评估值,确定与所述更新的驾驶动作模型相关的更新的样本评估值;以及
确定所述更新的样本评估值是否满足所述预设条件。
15.根据权利要求9所述的方法,其特征在于,所述训练的驾驶动作模型包括Q-学习神经网络模型。
16.根据权利要求9所述的方法,其特征在于,基于所述一个或以上评估值从所述一个或以上候选驾驶动作中选择所述目标驾驶动作,进一步包括:
根据预定规则,基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择所述目标驾驶动作。
17.一种被配置为自动驾驶的车辆,包括:
检测组件、规划组件和控制组件,其中所述规划组件被配置为:
获取与车辆相关的驾驶信息;
确定所述车辆的状态;
基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值,在所述训练的驾驶动作模型的训练过程中,
基于初始样本驾驶动作的初始奖励值,确定与初始驾驶动作模型相关的初始样本评估值,所述评估值基于对应于样本驾驶动作的奖励值确定,所述初始奖励值与驾驶路径与障碍物之间的距离、驾驶路径的平滑度和/或驾驶路径的舒适度相关;
所述初始样本评估值不满足预设条件,执行迭代更新;
基于先前迭代中对应于更新的样本驾驶动作的更新的奖励值以及样本评估值,确定与更新的驾驶动作模型相关的更新的样本评估值;
所述更新的样本评估值满足预设条件,模型训练结束;
基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作;
根据所述目标驾驶动作确定目标驾驶路径;以及
将信号发送至所述车辆的所述控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
18.根据权利要求17所述的车辆,其特征在于,所述与车辆相关的驾驶信息包括所述车辆第一预定范围内的感知信息和所述车辆所述第一预定范围内的地图信息。
19.根据权利要求18所述的车辆,其特征在于,所述感知信息包括道路信息和障碍物信息。
20.根据权利要求17所述的车辆,其特征在于,所述车辆的所述状态包括所述车辆的速度、所述车辆的加速度和所述车辆的方向盘的角度。
21.根据权利要求17-20中任一项所述的车辆,其特征在于,所述训练的驾驶动作模型由训练过程确定,所述训练过程包括:
获取初始驾驶动作模型;
获取初始样本驾驶信息,所述初始样本驾驶信息包括样本车辆第二预定范围内的初始样本感知信息和所述样本车辆所述第二预定范围内的初始样本地图信息;
获取所述样本车辆的初始样本状态;
基于所述初始样本驾驶信息、所述样本车辆的所述初始样本状态以及所述初始驾驶动作模型,确定初始样本驾驶动作;
基于对应于所述初始样本驾驶动作的初始奖励值,确定与所述初始驾驶动作模型相关的初始样本评估值,其特征在于,所述初始奖励值与与所述初始样本驾驶动作相关的初始样本驾驶路径与障碍物之间的距离相关;
确定所述初始样本评估值是否满足预设条件;以及
响应于确定所述初始样本评估值满足所述预设条件,指定所述初始驾驶动作模型作为所述训练的驾驶动作模型。
22.根据权利要求21所述的车辆,其特征在于,所述训练过程进一步包括:
响应于确定所述初始样本评估值不满足所述预设条件,执行一个或以上迭代以更新所述初始驾驶动作模型,直到更新的样本评估值满足所述预设条件,其特征在于,所述一个或以上迭代中的每一个包括:
基于先前迭代中的奖励值确定更新的驾驶动作模型;
获取更新的样本驾驶信息;
基于所述先前迭代中的样本驾驶动作和所述先前迭代中的所述样本车辆的样本状态,估计所述样本车辆的更新的样本状态;
基于所述更新的样本驾驶信息、所述样本车辆的所述更新的样本状态以及所述更新的驾驶动作模型,确定更新的样本驾驶动作;
基于对应于所述更新的样本驾驶动作的更新的奖励值和所述先前迭代中的样本评估值,确定与所述更新的驾驶动作模型相关的更新的样本评估值;以及
确定所述更新的样本评估值是否满足所述预设条件。
23.根据权利要求17所述的车辆,其特征在于,所述训练的驾驶动作模型包括Q-学习神经网络模型。
24.根据权利要求17所述的车辆,其特征在于,基于所述一个或以上评估值从所述一个或以上候选驾驶动作中选择所述目标驾驶动作,所述规划组件进一步被配置为:
根据预定规则,基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择所述目标驾驶动作。
25.一种用于确定自动驾驶中驾驶动作的系统,包括:
至少一个包括一组指令的存储介质;以及
至少一个处理器与所述至少一个存储介质通信,其中当执行该组指令时,所述至少一个处理器用于使所述系统:
获取与车辆相关的驾驶信息;
确定所述车辆的状态;
基于所述驾驶信息和所述车辆的所述状态,通过使用训练的驾驶动作模型,确定一个或以上候选驾驶动作和对应于所述一个或以上候选驾驶动作的一个或以上评估值,在所述训练的驾驶动作模型的训练过程中,
基于初始样本驾驶动作的初始奖励值,确定与初始驾驶动作模型相关的初始样本评估值,所述初始奖励值与驾驶路径与障碍物之间的距离、驾驶路径的平滑度和/或驾驶路径的舒适度相关;
所述初始样本评估值不满足预设条件,执行迭代更新;
基于先前迭代中对应于更新的样本驾驶动作的更新的奖励值以及样本评估值,确定与更新的驾驶动作模型相关的更新的样本评估值;
所述更新的样本评估值满足预设条件,模型训练结束;
基于所述一个或以上评估值,从所述一个或以上候选驾驶动作中选择目标驾驶动作;
基于据所述目标驾驶动作确定目标驾驶路径;以及
将信号发送至所述车辆的控制组件,以指示所述车辆执行所述目标驾驶动作以遵循所述目标驾驶路径。
26.一种用于确定自动驾驶中驾驶动作的装置,包括至少一个处理器以及至少一个存储介质;
所述至少一个存储介质用于存储计算机指令;
所述至少一个处理器用于执行所述计算机指令中的至少部分指令以实现如权利要求9~16中任意一项所述的操作。
27.一种非暂时计算机可读存储介质,所述存储介质存储有计算机指令,当所述计算机指令被至少一个处理器执行时实现如权利要求9~16中任意一项所述的操作。
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811547926.7A CN111413957B (zh) | 2018-12-18 | 2018-12-18 | 用于确定自动驾驶中的驾驶动作的系统和方法 |
AU2018286610A AU2018286610B2 (en) | 2018-12-18 | 2018-12-19 | Systems and methods for determining driving action in autonomous driving |
PCT/CN2018/122072 WO2020124431A1 (en) | 2018-12-18 | 2018-12-19 | Systems and methods for determining driving action in autonomous driving |
CA3028645A CA3028645C (en) | 2018-12-18 | 2018-12-19 | Systems and methods for determining driving action in autonomous driving |
SG11201811621PA SG11201811621PA (en) | 2018-12-18 | 2018-12-19 | Systems and methods for determining driving action in autonomous driving |
JP2018568931A JP2021511235A (ja) | 2018-12-18 | 2018-12-19 | 自律運転中の運転動作を決定するシステム及び方法 |
EP18819523.4A EP3695283A4 (en) | 2018-12-18 | 2018-12-19 | SYSTEMS AND PROCEDURES FOR DETERMINING DRIVING PRACTICE DURING AUTONOMOUS DRIVING |
TW107146735A TWI703065B (zh) | 2018-12-18 | 2018-12-24 | 用於確定自動駕駛中的駕駛動作的系統和方法 |
US16/234,007 US11155264B2 (en) | 2018-12-18 | 2018-12-27 | Systems and methods for determining driving action in autonomous driving |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811547926.7A CN111413957B (zh) | 2018-12-18 | 2018-12-18 | 用于确定自动驾驶中的驾驶动作的系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111413957A CN111413957A (zh) | 2020-07-14 |
CN111413957B true CN111413957B (zh) | 2021-11-02 |
Family
ID=71102427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811547926.7A Active CN111413957B (zh) | 2018-12-18 | 2018-12-18 | 用于确定自动驾驶中的驾驶动作的系统和方法 |
Country Status (9)
Country | Link |
---|---|
US (1) | US11155264B2 (zh) |
EP (1) | EP3695283A4 (zh) |
JP (1) | JP2021511235A (zh) |
CN (1) | CN111413957B (zh) |
AU (1) | AU2018286610B2 (zh) |
CA (1) | CA3028645C (zh) |
SG (1) | SG11201811621PA (zh) |
TW (1) | TWI703065B (zh) |
WO (1) | WO2020124431A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113260936A (zh) * | 2018-12-26 | 2021-08-13 | 三菱电机株式会社 | 移动体控制装置、移动体控制学习装置及移动体控制方法 |
US11934191B2 (en) * | 2019-07-05 | 2024-03-19 | Huawei Technologies Co., Ltd. | Method and system for predictive control of vehicle using digital images |
CN111857135A (zh) * | 2020-06-30 | 2020-10-30 | 北京百度网讯科技有限公司 | 用于车辆的避障方法、装置、电子设备和计算机存储介质 |
CN111731326B (zh) * | 2020-07-02 | 2022-06-21 | 知行汽车科技(苏州)有限公司 | 避障策略确定方法、装置及存储介质 |
US20220187084A1 (en) * | 2020-07-10 | 2022-06-16 | Beijing Didi Infinity Technology And Development Co., Ltd. | Vehicle repositioning on mobility-on-demand platforms |
CN111897344B (zh) * | 2020-08-14 | 2021-11-16 | 清华大学 | 一种兼顾稳定性的自动驾驶汽车路径跟踪控制方法 |
CN112406904B (zh) * | 2020-08-27 | 2022-02-01 | 腾讯科技(深圳)有限公司 | 自动驾驶策略的训练方法、自动驾驶方法、设备和车辆 |
CN112052959B (zh) * | 2020-09-04 | 2023-08-25 | 深圳前海微众银行股份有限公司 | 基于联邦学习的自动驾驶训练方法、设备及介质 |
KR20220033077A (ko) * | 2020-09-07 | 2022-03-16 | 주식회사 라이드플럭스 | 속력 프로파일을 이용한 자율주행 차량의 정지 제어 방법, 장치 및 컴퓨터프로그램 |
CN114148342A (zh) * | 2020-09-07 | 2022-03-08 | 奥迪股份公司 | 自动驾驶判断系统、自动驾驶控制系统及车辆 |
CN112141102B (zh) * | 2020-09-24 | 2022-02-15 | 阿波罗智能技术(北京)有限公司 | 巡航控制方法、装置、设备、车辆和介质 |
US11661076B1 (en) * | 2020-11-04 | 2023-05-30 | Zoox, Inc. | Techniques for determining a distance between a point and a spiral line segment |
US11878695B2 (en) * | 2021-01-26 | 2024-01-23 | Motional Ad Llc | Surface guided vehicle behavior |
CN112918478B (zh) * | 2021-02-25 | 2022-04-01 | 中南大学 | 一种车辆变道的预测方法、装置及计算机存储介质 |
CN113204920B (zh) * | 2021-05-12 | 2022-02-15 | 紫清智行科技(北京)有限公司 | 基于支持向量机的智能车换道舒适性评估及其轨迹规划方法和装置 |
CN113780101A (zh) * | 2021-08-20 | 2021-12-10 | 京东鲲鹏(江苏)科技有限公司 | 避障模型的训练方法、装置、电子设备及存储介质 |
CN113815645A (zh) * | 2021-09-14 | 2021-12-21 | 江苏大学 | 一种适用于环形交叉口的自动驾驶行为决策系统与运动规划方法 |
CN113997947B (zh) * | 2021-10-27 | 2022-09-27 | 山西大鲲智联科技有限公司 | 驾驶信息提示方法、装置、电子设备和计算机可读介质 |
CN114013443B (zh) * | 2021-11-12 | 2022-09-23 | 哈尔滨工业大学 | 一种基于分层强化学习的自动驾驶车辆换道决策控制方法 |
CN114407919B (zh) * | 2021-12-31 | 2023-06-02 | 武汉中海庭数据技术有限公司 | 一种基于自动驾驶的碰撞检测方法及系统 |
CN116225347B (zh) * | 2023-05-10 | 2023-06-30 | 上海伯镭智能科技有限公司 | 一种具有数据安全保护功能的无人驾驶系统数据管理方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105460014A (zh) * | 2014-09-29 | 2016-04-06 | 富士重工业株式会社 | 驾驶辅助控制装置 |
CN106292432A (zh) * | 2016-08-17 | 2017-01-04 | 深圳地平线机器人科技有限公司 | 信息处理方法、装置和电子设备 |
CN106875511A (zh) * | 2017-03-03 | 2017-06-20 | 深圳市唯特视科技有限公司 | 一种基于自编码正则化网络学习驾驶风格的方法 |
CN107491072A (zh) * | 2017-09-05 | 2017-12-19 | 百度在线网络技术(北京)有限公司 | 车辆避障方法和装置 |
CN108196535A (zh) * | 2017-12-12 | 2018-06-22 | 清华大学苏州汽车研究院(吴江) | 基于增强学习和多传感器融合的自动驾驶系统 |
CN108227710A (zh) * | 2017-12-29 | 2018-06-29 | 商汤集团有限公司 | 自动驾驶控制方法和装置、电子设备、程序和介质 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10036276A1 (de) * | 2000-07-26 | 2002-02-07 | Daimler Chrysler Ag | Automatisches Brems- und Lenksystem für ein Fahrzeug |
JP4781104B2 (ja) * | 2005-12-28 | 2011-09-28 | 国立大学法人名古屋大学 | 運転行動推定装置、及び運転支援装置 |
MX2015000832A (es) * | 2012-07-17 | 2015-04-08 | Nissan Motor | Sistema de asistencia a la conduccion y metodo de asistencia a la conduccion. |
JP6340812B2 (ja) | 2014-02-18 | 2018-06-13 | 村田機械株式会社 | 自律走行台車 |
JP6340824B2 (ja) | 2014-02-25 | 2018-06-13 | 村田機械株式会社 | 自律走行台車 |
KR101664582B1 (ko) | 2014-11-12 | 2016-10-10 | 현대자동차주식회사 | 자율주행차량의 주행경로 생성장치 및 방법 |
JP6507841B2 (ja) * | 2015-05-20 | 2019-05-08 | 株式会社豊田中央研究所 | 先行車両推定装置及びプログラム |
US9632502B1 (en) * | 2015-11-04 | 2017-04-25 | Zoox, Inc. | Machine-learning systems and techniques to optimize teleoperation and/or planner decisions |
CN108290579B (zh) * | 2015-11-04 | 2022-04-12 | 祖克斯有限公司 | 用于自主车辆的模拟系统和方法 |
JP6558239B2 (ja) * | 2015-12-22 | 2019-08-14 | アイシン・エィ・ダブリュ株式会社 | 自動運転支援システム、自動運転支援方法及びコンピュータプログラム |
WO2017120336A2 (en) * | 2016-01-05 | 2017-07-13 | Mobileye Vision Technologies Ltd. | Trained navigational system with imposed constraints |
CN105549597B (zh) | 2016-02-04 | 2018-06-26 | 同济大学 | 一种基于环境不确定性的无人车动态路径规划方法 |
JP6293197B2 (ja) * | 2016-04-26 | 2018-03-14 | 本田技研工業株式会社 | 車両制御システム、車両制御方法、および車両制御プログラム |
US10564644B2 (en) | 2016-06-08 | 2020-02-18 | Uisee Technologies (Beijing) Ltd | Speed planning method and apparatus and calculating apparatus for automatic driving of vehicle |
CN106209777A (zh) * | 2016-06-24 | 2016-12-07 | 韩磊 | 一种无人驾驶车车载信息交互系统及安全通信方法 |
US10762358B2 (en) * | 2016-07-20 | 2020-09-01 | Ford Global Technologies, Llc | Rear camera lane detection |
JP6919429B2 (ja) * | 2016-12-21 | 2021-08-18 | トヨタ自動車株式会社 | 運転支援装置 |
CN106774327B (zh) | 2016-12-23 | 2019-09-27 | 中新智擎科技有限公司 | 一种机器人路径规划方法及装置 |
CN106527452B (zh) | 2016-12-30 | 2019-11-05 | 广州汽车集团股份有限公司 | 一种无人驾驶汽车遇障时运动路径规划方法及系统 |
US10286915B2 (en) * | 2017-01-17 | 2019-05-14 | Nio Usa, Inc. | Machine learning for personalized driving |
CN106681335A (zh) | 2017-01-22 | 2017-05-17 | 无锡卡尔曼导航技术有限公司 | 用于农机无人驾驶的避障路径规划及其控制方法 |
US10446031B2 (en) * | 2017-03-14 | 2019-10-15 | Hyundai Mobis Co., Ltd. | Apparatus and method of safety support for vehicle |
CN110462544A (zh) * | 2017-03-20 | 2019-11-15 | 御眼视觉技术有限公司 | 自主车辆的轨迹选择 |
WO2018195848A1 (en) * | 2017-04-27 | 2018-11-01 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for route planning |
US20180348751A1 (en) * | 2017-05-31 | 2018-12-06 | Nio Usa, Inc. | Partially Autonomous Vehicle Passenger Control in Difficult Scenario |
JP6524144B2 (ja) * | 2017-06-02 | 2019-06-05 | 本田技研工業株式会社 | 車両制御システム及び方法、並びに走行支援サーバ |
SG11201811270WA (en) | 2017-07-13 | 2019-02-27 | Beijing Didi Infinity Technology & Development Co Ltd | Systems and methods for trajectory determination |
US10254759B1 (en) * | 2017-09-14 | 2019-04-09 | Waymo Llc | Interactive autonomous vehicle agent |
CN108009587B (zh) * | 2017-12-01 | 2021-04-16 | 驭势科技(北京)有限公司 | 一种基于强化学习和规则确定驾驶策略的方法与设备 |
US11040726B2 (en) * | 2017-12-15 | 2021-06-22 | Baidu Usa Llc | Alarm system of autonomous driving vehicles (ADVs) |
EP3636507A1 (en) * | 2018-03-20 | 2020-04-15 | Mobileye Vision Technologies Ltd. | Comfort responsibility sensitivity safety model |
CN111413958B (zh) | 2018-12-18 | 2021-09-24 | 北京航迹科技有限公司 | 用于确定自动驾驶中的驾驶路径的系统和方法 |
-
2018
- 2018-12-18 CN CN201811547926.7A patent/CN111413957B/zh active Active
- 2018-12-19 AU AU2018286610A patent/AU2018286610B2/en active Active
- 2018-12-19 JP JP2018568931A patent/JP2021511235A/ja active Pending
- 2018-12-19 CA CA3028645A patent/CA3028645C/en active Active
- 2018-12-19 WO PCT/CN2018/122072 patent/WO2020124431A1/en unknown
- 2018-12-19 SG SG11201811621PA patent/SG11201811621PA/en unknown
- 2018-12-19 EP EP18819523.4A patent/EP3695283A4/en not_active Withdrawn
- 2018-12-24 TW TW107146735A patent/TWI703065B/zh active
- 2018-12-27 US US16/234,007 patent/US11155264B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105460014A (zh) * | 2014-09-29 | 2016-04-06 | 富士重工业株式会社 | 驾驶辅助控制装置 |
CN106292432A (zh) * | 2016-08-17 | 2017-01-04 | 深圳地平线机器人科技有限公司 | 信息处理方法、装置和电子设备 |
CN106875511A (zh) * | 2017-03-03 | 2017-06-20 | 深圳市唯特视科技有限公司 | 一种基于自编码正则化网络学习驾驶风格的方法 |
CN107491072A (zh) * | 2017-09-05 | 2017-12-19 | 百度在线网络技术(北京)有限公司 | 车辆避障方法和装置 |
CN108196535A (zh) * | 2017-12-12 | 2018-06-22 | 清华大学苏州汽车研究院(吴江) | 基于增强学习和多传感器融合的自动驾驶系统 |
CN108227710A (zh) * | 2017-12-29 | 2018-06-29 | 商汤集团有限公司 | 自动驾驶控制方法和装置、电子设备、程序和介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2020124431A1 (en) | 2020-06-25 |
SG11201811621PA (en) | 2020-07-29 |
CA3028645A1 (en) | 2020-06-18 |
EP3695283A1 (en) | 2020-08-19 |
EP3695283A4 (en) | 2020-08-19 |
TWI703065B (zh) | 2020-09-01 |
JP2021511235A (ja) | 2021-05-06 |
CN111413957A (zh) | 2020-07-14 |
CA3028645C (en) | 2021-06-01 |
AU2018286610B2 (en) | 2020-10-29 |
US20200189590A1 (en) | 2020-06-18 |
TW202023866A (zh) | 2020-07-01 |
AU2018286610A1 (en) | 2020-07-02 |
US11155264B2 (en) | 2021-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111413957B (zh) | 用于确定自动驾驶中的驾驶动作的系统和方法 | |
CN111338333B (zh) | 用于自动驾驶的系统和方法 | |
US11669097B2 (en) | Systems and methods for autonomous driving | |
CN111413958B (zh) | 用于确定自动驾驶中的驾驶路径的系统和方法 | |
US20200191586A1 (en) | Systems and methods for determining driving path in autonomous driving | |
WO2020124440A1 (en) | Systems and methods for processing traffic objects | |
US20200193808A1 (en) | Systems and methods for processing traffic objects | |
US11120566B2 (en) | Determining vanishing points based on feature maps |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |