CN117360552B - 一种车辆控制方法、装置、设备及可读存储介质 - Google Patents
一种车辆控制方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN117360552B CN117360552B CN202311662491.1A CN202311662491A CN117360552B CN 117360552 B CN117360552 B CN 117360552B CN 202311662491 A CN202311662491 A CN 202311662491A CN 117360552 B CN117360552 B CN 117360552B
- Authority
- CN
- China
- Prior art keywords
- strategy
- driving
- current
- action
- vehicle
- 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
- 238000000034 method Methods 0.000 title claims abstract description 133
- 238000003860 storage Methods 0.000 title claims abstract description 26
- 230000009471 action Effects 0.000 claims abstract description 202
- 230000008569 process Effects 0.000 claims abstract description 47
- 230000006870 function Effects 0.000 claims description 110
- 238000012549 training Methods 0.000 claims description 88
- 230000008859 change Effects 0.000 claims description 66
- 230000033001 locomotion Effects 0.000 claims description 56
- 238000006073 displacement reaction Methods 0.000 claims description 37
- 238000005457 optimization Methods 0.000 claims description 36
- 238000011156 evaluation Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 20
- 230000002787 reinforcement Effects 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000001965 increasing effect Effects 0.000 claims description 6
- 230000008901 benefit Effects 0.000 claims description 5
- 238000003062 neural network model Methods 0.000 claims description 5
- 238000002360 preparation method Methods 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 45
- 230000001276 controlling effect Effects 0.000 description 30
- 238000010276 construction Methods 0.000 description 12
- 230000003993 interaction Effects 0.000 description 12
- 230000006399 behavior Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000007613 environmental effect Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 230000001133 acceleration Effects 0.000 description 8
- 238000005070 sampling Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 8
- 230000001186 cumulative effect Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 235000004522 Pentaglottis sempervirens Nutrition 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 230000000452 restraining effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 125000003275 alpha amino acid group Chemical group 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000036461 convulsion Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- 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
-
- 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
- B60W30/02—Control of vehicle driving stability
Landscapes
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Human Computer Interaction (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了自动驾驶技术领域内的一种车辆控制方法、装置、设备及可读存储介质。本发明能够分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,该策略动作用于控制车辆沿设定轨迹点行驶预设距离,可应对更复杂的驾驶场景;还能够根据每个驾驶策略的运行估计值分别确定每个驾驶策略的置信度,选择置信度最高的驾驶策略用于车辆的自动驾驶,由此可选择可靠性高的、适用于更高复杂度的驾驶场景的驾驶策略进行车辆的自动驾驶。该方案基于驾驶策略的置信度衡量驾驶策略的风险程度,通过风险程度最小的驾驶策略可确保车辆驾驶期间始终执行最优驾驶策略,保障长尾情况下的驾驶性能的稳定性。
Description
技术领域
本发明涉及自动驾驶技术领域,特别涉及一种车辆控制方法、装置、设备及可读存储介质。
背景技术
自动驾驶技术在提高各种驾驶场景下的车辆安全性和机动性方面具有巨大潜力。然而,现实世界的驾驶场景通常是长尾分布式的,对于出现概率较小的风险案例,驾驶系统会由于数据不足而缺乏对环境的了解,无法及时作出合理响应。自动驾驶车辆在现实中可能遇到的风险案例无穷无尽,这些案例可能具有多种特征,例如封路、交通事故、违反交通规则等,即使进行数百万英里的实际路测也无法一一遍历。即便是对于一个训练有素的驾驶策略,在实际驾驶过程中仍然可能会出现故障。
由于真实自动驾驶过程并不是特定个别场景的简单切换,驾驶策略可能会被要求同时处理多种未见场景,这对驾驶策略提出了更高的要求。当前通过强化学习得到的自动驾驶策略要么过于激进要么过于保守,导致自动驾驶策略实际上难以产生可靠的自动驾驶动作。并且,当前自动驾驶策略用于产生车辆级别的控制命令,如:每个时刻的车辆转向、加速指令等,这种单步控制的自动驾驶策略难以实现复杂度更高的高级驾驶行为。
因此,如何选择可靠性高的、适用于更高复杂度驾驶场景的自动驾驶策略,是本领域技术人员需要解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种车辆控制方法、装置、设备及可读存储介质,以选择可靠性高的、适用于更高复杂度驾驶场景的自动驾驶策略。其具体方案如下:
第一方面,本发明提供了一种车辆控制方法,包括:
获取多个驾驶策略;
分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集;所述策略动作用于控制车辆沿设定轨迹点行驶预设距离;
根据所述运行三元集分别计算每个驾驶策略的运行估计值,并根据所述运行估计值分别确定每个驾驶策略的置信度;
在所述多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶。
可选地,所述分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集,包括:
针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集所述真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态、策略动作及动作奖励;
在自动驾驶结束后,汇总各次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
可选地,所述分别运行每个驾驶策略,包括:
分别利用每个驾驶策略控制同一真实车辆进行自动驾驶,以在同一真实车辆上分别运行每个驾驶策略。
可选地,所述分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集,包括:
针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集所述真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态及策略动作;在自动驾驶结束后,汇总各次的输入状态及策略动作,得到训练样本;
利用所述训练样本和当前驾驶策略训练得到虚拟驾驶模型;
利用当前驾驶策略和所述虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
可选地,所述利用所述训练样本和当前驾驶策略训练得到虚拟驾驶模型,包括:
将所述训练样本和当前驾驶策略训练预设的高斯神经网络模型,得到所述虚拟驾驶模型。
可选地,所述利用所述训练样本和当前驾驶策略训练得到虚拟驾驶模型,包括:
将所述训练样本划分为至少两个子样本集;
利用每个子样本集和当前驾驶策略分别训练一个子模型,得到至少两个子模型;
在所述至少两个子模型中选择模型评估值最低的子模型作为所述虚拟驾驶模型。
可选地,所述在所述至少两个子模型中选择模型评估值最低的子模型作为所述虚拟驾驶模型,包括:
计算每个子模型在所述训练样本上的模型评估值;
选择模型评估值最低的子模型作为所述虚拟驾驶模型。
可选地,所述利用当前驾驶策略和所述虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集,包括:
若当前迭代次数未超出预测总次数,则获取前一次输入状态及前一次策略动作;将前一次输入状态及前一次策略动作输入所述虚拟驾驶模型,以使所述虚拟驾驶模型输出当前输入状态;
使当前驾驶策略根据当前输入状态输出当前策略动作;
使当前驾驶策略对应的奖励函数根据当前策略动作计算当前动作奖励;
将当前输入状态、当前策略动作和当前动作奖励构建为三元组,并将所述三元组作为当前驾驶策略的运行三元集中的一个元素;
将当前输入状态作为前一次输入状态,将当前策略动作作为前一次策略动作,并使当前迭代次数递增一,然后判断当前迭代次数是否超出预测总次数。
可选地,所述奖励函数为:r=λ e ×r e +λ s ×r s +λ ot ×r ot ;r为当前动作奖励,λ e 为当前驾驶策略的第一奖励系数,λ s 为当前驾驶策略的第二奖励系数,λ ot 为当前驾驶策略的第三奖励系数,r e 为当前车辆效率,r s 为当前安全奖励,r ot 为当前超车奖励。
可选地,所述多个驾驶策略中的任意驾驶策略i的第一奖励系数、第二奖励系数和第三奖励系数的计算公式包括:
λ e,i =λ e,max -[(i-1)(λ e,max -λ e,min )]/m;
λ s,i =λ s,min -[i(λ s,max -λ s,min )]/m;
λ ot,i =λ ot,min -[i(λ ot,max -λ ot,min )]/m;
其中,λ e,i 为驾驶策略i的第一奖励系数,λ s,i 为驾驶策略i的第二奖励系数,λ ot,i 为驾驶策略i的第三奖励系数,λ e,max 为第一奖励系数对应的预设最大值,λ e,min 为第一奖励系数对应的预设最小值,λ s,max 为第二奖励系数对应的预设最大值,λ s,min 为第二奖励系数对应的预设最小值,λ ot,max 为第三奖励系数对应的预设最大值,λ ot,min 为第三奖励系数对应的预设最小值,m为驾驶策略的总个数。
可选地,所述多个驾驶策略中的任意目标驾驶策略的生成过程包括:
设定奖励函数,并构建包括所述奖励函数的初始策略;
利用强化学习方法训练所述初始策略,得到待优化策略;
利用所述待优化策略构建优化样本;
在成本函数的约束下,以最大奖励为求解目标,构建拉格朗日目标函数;
利用所述优化样本迭代求解所述拉格朗日目标函数,以优化所述待优化策略,得到所述目标驾驶策略。
可选地,所述利用所述待优化策略构建优化样本,包括:
将目标状态输入所述待优化策略,以使所述待优化策略输出结束状态和目标窗口;
在所述目标窗口内使所述目标状态为起始点,使所述结束状态为终点,并通过曲线拟合确定所述目标窗口内的各轨迹点;
连接各轨迹点得到运动轨迹,并生成能够控制车辆沿所述运动轨迹行驶的目标策略动作;
将所述目标状态、所述目标策略动作和所述目标策略动作的奖励值构建为所述优化样本。
可选地,所述通过曲线拟合确定所述目标窗口内的各轨迹点,包括:
在所述目标窗口内拟合得到位移变化曲线;
在所述目标窗口内拟合得到速度变化曲线;
匹配所述位移变化曲线和所述速度变化曲线中的各点,以确定所述目标窗口内的各轨迹点。
可选地,所述通过曲线拟合确定所述目标窗口内的各轨迹点,包括:
在所述目标窗口内拟合得到位移变化曲线;
在所述目标窗口内拟合速度变化曲线时与所述位移变化曲线进行匹配,以确定所述目标窗口内的各轨迹点。
可选地,所述通过曲线拟合确定所述目标窗口内的各轨迹点,包括:
在所述目标窗口内拟合得到速度变化曲线;
在所述目标窗口内拟合位移变化曲线时与所述速度变化曲线进行匹配,以确定所述目标窗口内的各轨迹点。
可选地,所述拉格朗日目标函数含用于约束所述成本函数的正则化项。
可选地,在任意一次迭代中执行如下优化步骤:
固定拉格朗日乘子和成本函数,通过最大化所述拉格朗日目标函数优化优化当前待优化策略;
和/或
固定当前待优化策略和成本函数,通过最小化所述拉格朗日目标函数优化拉格朗日乘子;
和/或
固定当前待优化策略和拉格朗日乘子,通过最大化所述拉格朗日目标函数优化成本函数。
可选地,所述设定奖励函数,包括:
确定所述目标驾驶策略在所述多个驾驶策略中的标识信息;
根据所述标识信息计算第一奖励系数、第二奖励系数和第三奖励系数,并构建所述奖励函数。
可选地,所述在所述多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶,包括:
使置信度最高的驾驶策略针对车辆当前状态输出可信策略动作;
按照所述可信策略动作确定由多个控制指令构成的指令序列;
按照所述指令序列控制车辆沿设定轨迹点自动行驶预设距离。
第二方面,本发明提供了一种车辆控制装置,包括:
获取模块,用于获取多个驾驶策略;
收集模块,用于分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集;所述策略动作用于控制车辆沿设定轨迹点行驶预设距离;
评估模块,用于根据所述运行三元集分别计算每个驾驶策略的运行估计值,并根据所述运行估计值分别确定每个驾驶策略的置信度;
应用模块,用于在所述多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶。
可选地,所述收集模块具体用于:针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集所述真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态、策略动作及动作奖励;在自动驾驶结束后,汇总各次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
可选地,所述收集模块具体用于:分别利用每个驾驶策略控制同一真实车辆进行自动驾驶,以在同一真实车辆上分别运行每个驾驶策略。
可选地,所述收集模块包括:
样本准备单元,用于针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集所述真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态及策略动作;在自动驾驶结束后,汇总各次的输入状态及策略动作,得到训练样本;
训练单元,用于利用所述训练样本和当前驾驶策略训练得到虚拟驾驶模型;
生成单元,用于利用当前驾驶策略和所述虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
可选地,所述训练单元具体用于:将所述训练样本和当前驾驶策略训练预设的高斯神经网络模型,得到所述虚拟驾驶模型。
可选地,所述训练单元具体用于:将所述训练样本划分为至少两个子样本集;利用每个子样本集和当前驾驶策略分别训练一个子模型,得到至少两个子模型;在所述至少两个子模型中选择模型评估值最低的子模型作为所述虚拟驾驶模型。
可选地,所述训练单元具体用于:计算每个子模型在所述训练样本上的模型评估值;选择模型评估值最低的子模型作为所述虚拟驾驶模型。
可选地,所述生成单元具体用于:若当前迭代次数未超出预测总次数,则获取前一次输入状态及前一次策略动作;将前一次输入状态及前一次策略动作输入所述虚拟驾驶模型,以使所述虚拟驾驶模型输出当前输入状态;使当前驾驶策略根据当前输入状态输出当前策略动作;使当前驾驶策略对应的奖励函数根据当前策略动作计算当前动作奖励;将当前输入状态、当前策略动作和当前动作奖励构建为三元组,并将所述三元组作为当前驾驶策略的运行三元集中的一个元素;将当前输入状态作为前一次输入状态,将当前策略动作作为前一次策略动作,并使当前迭代次数递增一,然后判断当前迭代次数是否超出预测总次数。
可选地,所述奖励函数为:r=λ e ×r e +λ s ×r s +λ ot ×r ot ;r为当前动作奖励,λ e 为当前驾驶策略的第一奖励系数,λ s 为当前驾驶策略的第二奖励系数,λ ot 为当前驾驶策略的第三奖励系数,r e 为当前车辆效率,r s 为当前安全奖励,r ot 为当前超车奖励。
可选地,所述多个驾驶策略中的任意驾驶策略i的第一奖励系数、第二奖励系数和第三奖励系数的计算公式包括:λ e,i =λ e,max -[(i-1)(λ e,max -λ e,min )]/m;λ s,i =λ s,min -[i(λ s,max -λ s,min )]/m;λ ot,i =λ ot,min -[i(λ ot,max -λ ot,min )]/m;其中,λ e,i 为驾驶策略i的第一奖励系数,λ s,i 为驾驶策略i的第二奖励系数,λ ot,i 为驾驶策略i的第三奖励系数,λ e,max 为第一奖励系数对应的预设最大值,λ e,min 为第一奖励系数对应的预设最小值,λ s,max 为第二奖励系数对应的预设最大值,λ s,min 为第二奖励系数对应的预设最小值,λ ot,max 为第三奖励系数对应的预设最大值,λ ot,min 为第三奖励系数对应的预设最小值,m为驾驶策略的总个数。
可选地,还包括:驾驶策略生成模块,该模块用于生成所述多个驾驶策略中的任意目标驾驶策略;其中,驾驶策略生成模块包括:
初始单元,用于设定奖励函数,并构建包括所述奖励函数的初始策略;
训练单元,用于利用强化学习方法训练所述初始策略,得到待优化策略;
样本构建单元,用于利用所述待优化策略构建优化样本;
函数构建单元,用于在成本函数的约束下,以最大奖励为求解目标,构建拉格朗日目标函数;
优化单元,用于利用所述优化样本迭代求解所述拉格朗日目标函数,以优化所述待优化策略,得到所述目标驾驶策略。
可选地,所述样本构建单元具体用于:将目标状态输入所述待优化策略,以使所述待优化策略输出结束状态和目标窗口;在所述目标窗口内使所述目标状态为起始点,使所述结束状态为终点,并通过曲线拟合确定所述目标窗口内的各轨迹点;连接各轨迹点得到运动轨迹,并生成能够控制车辆沿所述运动轨迹行驶的目标策略动作;将所述目标状态、所述目标策略动作和所述目标策略动作的奖励值构建为所述优化样本。
可选地,所述样本构建单元具体用于:在所述目标窗口内拟合得到位移变化曲线;在所述目标窗口内拟合得到速度变化曲线;匹配所述位移变化曲线和所述速度变化曲线中的各点,以确定所述目标窗口内的各轨迹点。
可选地,所述样本构建单元具体用于:在所述目标窗口内拟合得到位移变化曲线;在所述目标窗口内拟合速度变化曲线时与所述位移变化曲线进行匹配,以确定所述目标窗口内的各轨迹点。
可选地,所述样本构建单元具体用于:在所述目标窗口内拟合得到速度变化曲线;在所述目标窗口内拟合位移变化曲线时与所述速度变化曲线进行匹配,以确定所述目标窗口内的各轨迹点。
可选地,所述拉格朗日目标函数含用于约束所述成本函数的正则化项。
可选地,在任意一次迭代中执行如下优化步骤:固定拉格朗日乘子和成本函数,通过最大化所述拉格朗日目标函数优化优化当前待优化策略;和/或固定当前待优化策略和成本函数,通过最小化所述拉格朗日目标函数优化拉格朗日乘子;和/或固定当前待优化策略和拉格朗日乘子,通过最大化所述拉格朗日目标函数优化成本函数。
可选地,所述初始单元具体用于:确定所述目标驾驶策略在所述多个驾驶策略中的标识信息;根据所述标识信息计算第一奖励系数、第二奖励系数和第三奖励系数,并构建所述奖励函数。
可选地,所述应用模块具体用于:使置信度最高的驾驶策略针对车辆当前状态输出可信策略动作;按照所述可信策略动作确定由多个控制指令构成的指令序列;按照所述指令序列控制车辆沿设定轨迹点自动行驶预设距离。
第三方面,本发明提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的车辆控制方法。
第四方面,本发明提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的车辆控制方法。
通过以上方案可知,本发明提供了一种车辆控制方法,包括:获取多个驾驶策略;分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集;所述策略动作用于控制车辆沿设定轨迹点行驶预设距离;根据所述运行三元集分别计算每个驾驶策略的运行估计值,并根据所述运行估计值分别确定每个驾驶策略的置信度;在所述多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶。
可见,本发明的有益效果为:能够分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,该策略动作用于控制车辆沿设定轨迹点行驶预设距离,不同于车辆级别的控制命令,利用此策略动作可应对更复杂的驾驶场景;该方案还能够根据每个驾驶策略的运行估计值分别确定每个驾驶策略的置信度,然后选择置信度最高的驾驶策略用于车辆的自动驾驶,由此可选择可靠性高的、适用于更高复杂度的驾驶场景的驾驶策略进行车辆的自动驾驶。该方案基于驾驶策略的置信度衡量驾驶策略的风险程度,通过置信度最高的(即风险程度最小的)驾驶策略可确保车辆驾驶期间始终执行最优驾驶策略,保障长尾情况下的驾驶性能的稳定性。
相应地,本发明提供的一种车辆控制装置、设备及可读存储介质,也同样具有上述技术效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明公开的一种车辆控制方法流程图;
图2为本发明公开的一种驾驶策略生成方法流程图;
图3为本发明公开的一种车辆控制装置示意图;
图4为本发明公开的一种电子设备示意图;
图5为本发明提供的一种服务器结构图;
图6为本发明提供的一种终端结构图;
图7为本发明公开的一种驾驶策略生成过程示意图;
图8为本发明公开的一种驾驶策略选择过程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,驾驶策略可能会被要求同时处理多种未见场景,这对驾驶策略提出了更高的要求。当前通过强化学习得到的自动驾驶策略要么过于激进要么过于保守,导致自动驾驶策略实际上难以产生可靠的自动驾驶动作。并且,当前自动驾驶策略用于产生车辆级别的控制命令,如:每个时刻的车辆转向、加速指令等,这种单步控制的自动驾驶策略难以实现复杂度更高的高级驾驶行为。为此,本发明提供了一种车辆控制方案,能够选择可靠性高的、适用于更高复杂度驾驶场景的自动驾驶策略用于车辆的自动驾驶。
参见图1所示,本发明实施例公开了一种车辆控制方法,包括:
S101、获取多个驾驶策略。
在本实施例中,不同驾驶策略的驾驶偏好不同,如:有的驾驶策略比较激进,有的驾驶策略比较保守。驾驶策略的驾驶偏好可通过改变其所对应奖励函数的奖励系数实现。奖励函数的计算公式可以为:r =λ e ×r e +λ s ×r s +λ ot ×r ot ;r为当前动作奖励,λ e 为当前驾驶策略的第一奖励系数,λ s 为当前驾驶策略的第二奖励系数,λ ot 为当前驾驶策略的第三奖励系数,r e 为当前车辆效率,r s 为当前安全奖励,r ot 为当前超车奖励。通过调整第一奖励系数、第二奖励系数和/或第三奖励系数的取值,可更改相应驾驶策略的驾驶偏好。需要说明的是,本实施例中的奖励函数针对策略动作计算其对应的动作奖励,动作奖励也就是:车辆在策略动作的控制下沿设定轨迹点行驶预设距离的累计奖励,因此本实施例中的奖励函数不同于计算单一车辆控制命令的奖励的函数。
其中,第一奖励系数、第二奖励系数和第三奖励系数的取值可按照下述进行调整和更改。在一种实施方式中,多个驾驶策略中的任意驾驶策略i的第一奖励系数、第二奖励系数和第三奖励系数的计算公式包括:λ e,i =λ e,max -[(i-1)(λ e,max -λ e,min )]/m;λ s,i =λ s,min -[i(λ s,max -λ s,min )]/m;λ ot,i =λ ot,min -[i(λ ot,max -λ ot,min )]/m;其中,λ e,i 为驾驶策略i的第一奖励系数,λ s,i 为驾驶策略i的第二奖励系数,λ ot,i 为驾驶策略i的第三奖励系数,λ e,max 为第一奖励系数对应的预设最大值,λ e,min 为第一奖励系数对应的预设最小值,λ s,max 为第二奖励系数对应的预设最大值,λ s,min 为第二奖励系数对应的预设最小值,λ ot,max 为第三奖励系数对应的预设最大值,λ ot,min 为第三奖励系数对应的预设最小值,m为驾驶策略的总个数。i可看作当前驾驶策略在多个驾驶策略中的标识信息,该标识信息可以用数字表示,例如:该标识信息可以是多个驾驶策略按激进程度或保守程序由大至小或由小至大排列确定的驾驶策略的排列序号。
S102、分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集。
其中,策略动作用于控制车辆沿设定轨迹点行驶预设距离。通过策略动作可确定一系列有排列顺序的控制指令,按照这些控制指令可以有序控制车辆沿设定轨迹点行驶预设距离。其中,一个控制指令对应一个轨迹点。输入状态为输入给驾驶策略被其处理的车辆的状态,包括:车辆位置(包括纵向位置和横向位置)、航向角、速度和加速度等信息。动作奖励是驾驶策略针对输入状态所输出的策略动作对应的奖励值。
需要说明的是,每个驾驶策略的运行三元集可以是在真实车辆上应用相应驾驶策略得到,也可以是在虚拟环境中运行相应驾驶策略得到。在一种实施方式中,分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集,包括:针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态、策略动作及动作奖励;在自动驾驶结束后,汇总各次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。由此得到的运行三元集中的元素均为真实驾驶数据。
在一种实施方式中,分别运行每个驾驶策略,包括:分别利用每个驾驶策略控制同一真实车辆进行自动驾驶,以在同一真实车辆上分别运行每个驾驶策略。由此使每个驾驶策略在同一真实车辆上得到真实驾驶数据构成的运行三元集。
在一种实施方式中,分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集,包括:针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态及策略动作;在自动驾驶结束后,汇总各次的输入状态及策略动作,得到训练样本;利用训练样本和当前驾驶策略训练得到虚拟驾驶模型;利用当前驾驶策略和虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。由此得到的运行三元集中的元素均为虚拟驾驶数据。
需要说明的是,单一驾驶策略的运行三元集中的元素可以为虚拟驾驶数据和/或真实驾驶数据。
在一种实施方式中,利用训练样本和当前驾驶策略训练得到虚拟驾驶模型,包括:将训练样本和当前驾驶策略训练预设的高斯神经网络模型,得到虚拟驾驶模型。在一种实施方式中,利用训练样本和当前驾驶策略训练得到虚拟驾驶模型,包括:将训练样本划分为至少两个子样本集;利用每个子样本集和当前驾驶策略分别训练一个子模型,得到至少两个子模型;在至少两个子模型中选择模型评估值最低的子模型作为虚拟驾驶模型。其中,在至少两个子模型中选择模型评估值最低的子模型作为虚拟驾驶模型,包括:计算每个子模型在训练样本上的模型评估值;选择模型评估值最低的子模型作为虚拟驾驶模型。模型评估值用于描述模型的性能,模型评估值越大模型性能越好,模型评估值越小模型性能越差。本实施例为了评估出每一驾驶策略对应的最不安全情况,选择模型评估值最低的子模型作为虚拟驾驶模型,由此能够使驾驶策略的运行三元集含该驾驶策略在最不安全情况下产生的策略动作及动作奖励,之后据此评估每一驾驶策略的运行估计值,有利于选择出安全性最可靠的驾驶策略。虚拟驾驶模型通过有监督的训练方法训练获得。
进一步地,利用当前驾驶策略和虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集,包括:若当前迭代次数未超出预测总次数,则获取前一次输入状态及前一次策略动作;将前一次输入状态及前一次策略动作输入虚拟驾驶模型,以使虚拟驾驶模型输出当前输入状态;使当前驾驶策略根据当前输入状态输出当前策略动作;使当前驾驶策略对应的奖励函数根据当前策略动作计算当前动作奖励;将当前输入状态、当前策略动作和当前动作奖励构建为三元组,并将三元组作为当前驾驶策略的运行三元集中的一个元素;将当前输入状态作为前一次输入状态,将当前策略动作作为前一次策略动作,并使当前迭代次数递增一,然后判断当前迭代次数是否超出预测总次数。若当前迭代次数未超出预测总次数,则停止当前流程,并输出当前驾驶策略的运行三元集。可见,虚拟驾驶模型的输入数据包括:前一次输入状态和前一次策略动作;输出数据为:后一次输入状态(当前输入状态)。
S103、根据运行三元集分别计算每个驾驶策略的运行估计值,并根据运行估计值分别确定每个驾驶策略的置信度。
其中,每个驾驶策略的运行估计值可直接作为相应驾驶策略的置信度。
S104、在多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶。
在本实施例中,在多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶,包括:使置信度最高的驾驶策略针对车辆当前状态输出可信策略动作;按照可信策略动作确定由多个控制指令构成的指令序列;按照指令序列控制车辆沿设定轨迹点自动行驶预设距离。
可见,本实施例能够分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,该策略动作用于控制车辆沿设定轨迹点行驶预设距离,不同于车辆级别的控制命令,利用此策略动作可应对更复杂的驾驶场景;该方案还能够根据每个驾驶策略的运行估计值分别确定每个驾驶策略的置信度,然后选择置信度最高的驾驶策略用于车辆的自动驾驶,由此可选择可靠性高的、适用于更高复杂度的驾驶场景的驾驶策略进行车辆的自动驾驶。该方案基于驾驶策略的置信度衡量驾驶策略的风险程度,通过置信度最高的(即风险程度最小的)驾驶策略可确保车辆驾驶期间始终执行最优驾驶策略,保障长尾情况下的驾驶性能的稳定性。
请参见图2,多个驾驶策略中的任意目标驾驶策略的生成过程包括:
S201、设定奖励函数,并构建包括奖励函数的初始策略。
需要说明的是,不同驾驶策略的奖励函数的奖励系数取值不同,其取值方式可按照如下公式确定:标识信息为i的驾驶策略的三个奖励系数的计算公式包括:λ e,i =λ e,max -[(i-1)(λ e,max -λ e,min )]/m;λ s,i =λ s,min -[i(λ s,max -λ s,min )]/m;λ ot,i =λ ot,min -[i(λ ot,max -λ ot,min )]/m。相应地奖励函数的计算公式为:r =λ e,i ×r e +λ s,i ×r s +λ ot,i ×r ot 。在一种实施方式中,设定奖励函数,包括:确定目标驾驶策略在多个驾驶策略中的标识信息;根据标识信息计算第一奖励系数、第二奖励系数和第三奖励系数,并构建奖励函数。
S202、利用强化学习方法训练初始策略,得到待优化策略。
S203、利用待优化策略构建优化样本。
在一种实施方式中,利用待优化策略构建优化样本,包括:将目标状态输入待优化策略,以使待优化策略输出结束状态和目标窗口;在目标窗口内使目标状态为起始点,使结束状态为终点,并通过曲线拟合确定目标窗口内的各轨迹点;连接各轨迹点得到运动轨迹,并生成能够控制车辆沿运动轨迹行驶的目标策略动作;将目标状态、目标策略动作和目标策略动作的奖励值构建为优化样本。曲线拟合可采用多项式等拟合方法。
其中,通过曲线拟合确定目标窗口内的各轨迹点,包括:在目标窗口内拟合得到位移变化曲线;在目标窗口内拟合得到速度变化曲线;匹配位移变化曲线和速度变化曲线中的各点,以确定目标窗口内的各轨迹点。或在目标窗口内拟合得到位移变化曲线;在目标窗口内拟合速度变化曲线时与位移变化曲线进行匹配,以确定目标窗口内的各轨迹点。或在目标窗口内拟合得到速度变化曲线;在目标窗口内拟合位移变化曲线时与速度变化曲线进行匹配,以确定目标窗口内的各轨迹点。一个轨迹点对应一个控制指令,目标窗口内的各轨迹点对应一系列有排列顺序的控制指令,因此基于目标窗口内各轨迹点形成的运动轨迹,能够对应生成控制车辆沿此运动轨迹行驶的目标策略动作。
S204、在成本函数的约束下,以最大奖励为求解目标,构建拉格朗日目标函数。
其中,拉格朗日目标函数含用于约束成本函数的正则化项,能够约束成本函数的值不至于过高,过高的成本函数值会增大安全约束,会使驾驶策略过于保守。
S205、利用优化样本迭代求解拉格朗日目标函数,以优化待优化策略,得到目标驾驶策略。
在一种示例中,在任意一次迭代中执行如下优化步骤:固定拉格朗日乘子和成本函数,通过最大化拉格朗日目标函数优化优化当前待优化策略;和/或固定当前待优化策略和成本函数,通过最小化拉格朗日目标函数优化拉格朗日乘子;和/或固定当前待优化策略和拉格朗日乘子,通过最大化拉格朗日目标函数优化成本函数。可见,上述三个优化步骤可以在每一次迭代中都执行,也可以在每一次迭代中仅执行其中一个或两个。
需要说明的是,在一次优化完成后,可以用本次优化得到的驾驶策略执行步骤S202,以基于局部轨迹再次进行策略学习,而后再次执行S203重新构建优化样本,之后再开启新的一轮优化。由此可实现:策略优化与基于局部轨迹学习策略的联合进行,更有利于保障驾驶策略的可靠性。
下面对本发明实施例提供的一种车辆控制装置进行介绍,下文描述的一种车辆控制装置与本文描述的其他实施例可以相互参照。
参见图3所示,本发明实施例公开了一种车辆控制装置,包括:
获取模块301,用于获取多个驾驶策略;
收集模块302,用于分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集;策略动作用于控制车辆沿设定轨迹点行驶预设距离;
评估模块303,用于根据运行三元集分别计算每个驾驶策略的运行估计值,并根据运行估计值分别确定每个驾驶策略的置信度;
应用模块304,用于在多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶。
在一种实施方式中,收集模块具体用于:针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态、策略动作及动作奖励;在自动驾驶结束后,汇总各次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
在一种实施方式中,收集模块具体用于:分别利用每个驾驶策略控制同一真实车辆进行自动驾驶,以在同一真实车辆上分别运行每个驾驶策略。
在一种实施方式中,收集模块包括:
样本准备单元,用于针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态及策略动作;在自动驾驶结束后,汇总各次的输入状态及策略动作,得到训练样本;
训练单元,用于利用训练样本和当前驾驶策略训练得到虚拟驾驶模型;
生成单元,用于利用当前驾驶策略和虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
在一种实施方式中,训练单元具体用于:将训练样本和当前驾驶策略训练预设的高斯神经网络模型,得到虚拟驾驶模型。
在一种实施方式中,训练单元具体用于:将训练样本划分为至少两个子样本集;利用每个子样本集和当前驾驶策略分别训练一个子模型,得到至少两个子模型;在至少两个子模型中选择模型评估值最低的子模型作为虚拟驾驶模型。
在一种实施方式中,训练单元具体用于:计算每个子模型在训练样本上的模型评估值;选择模型评估值最低的子模型作为虚拟驾驶模型。
在一种实施方式中,生成单元具体用于:若当前迭代次数未超出预测总次数,则获取前一次输入状态及前一次策略动作;将前一次输入状态及前一次策略动作输入虚拟驾驶模型,以使虚拟驾驶模型输出当前输入状态;使当前驾驶策略根据当前输入状态输出当前策略动作;使当前驾驶策略对应的奖励函数根据当前策略动作计算当前动作奖励;将当前输入状态、当前策略动作和当前动作奖励构建为三元组,并将三元组作为当前驾驶策略的运行三元集中的一个元素;将当前输入状态作为前一次输入状态,将当前策略动作作为前一次策略动作,并使当前迭代次数递增一,然后判断当前迭代次数是否超出预测总次数。
在一种实施方式中,奖励函数为:r =λ e ×r e +λ s ×r s +λ ot ×r ot ;r为当前动作奖励,λ e 为当前驾驶策略的第一奖励系数,λ s 为当前驾驶策略的第二奖励系数,λ ot 为当前驾驶策略的第三奖励系数,r e 为当前车辆效率,r s 为当前安全奖励,r ot 为当前超车奖励。
在一种实施方式中,多个驾驶策略中的任意驾驶策略i的第一奖励系数、第二奖励系数和第三奖励系数的计算公式包括:λ e,i =λ e,max -[(i-1)(λ e,max -λ e,min )]/m;λ s,i =λ s,min -[i(λ s,max -λ s,min )]/m;λ ot,i =λ ot,min -[i(λ ot,max -λ ot,min )]/m;其中,λ e,i 为驾驶策略i的第一奖励系数,λ s,i 为驾驶策略i的第二奖励系数,λ ot,i 为驾驶策略i的第三奖励系数,λ e,max 为第一奖励系数对应的预设最大值,λ e,min 为第一奖励系数对应的预设最小值,λ s,max 为第二奖励系数对应的预设最大值,λ s,min 为第二奖励系数对应的预设最小值,λ ot,max 为第三奖励系数对应的预设最大值,λ ot,min 为第三奖励系数对应的预设最小值,m为驾驶策略的总个数。
在一种实施方式中,还包括:驾驶策略生成模块,该模块用于生成多个驾驶策略中的任意目标驾驶策略;其中,驾驶策略生成模块包括:
初始单元,用于设定奖励函数,并构建包括奖励函数的初始策略;
训练单元,用于利用强化学习方法训练初始策略,得到待优化策略;
样本构建单元,用于利用待优化策略构建优化样本;
函数构建单元,用于在成本函数的约束下,以最大奖励为求解目标,构建拉格朗日目标函数;
优化单元,用于利用优化样本迭代求解拉格朗日目标函数,以优化待优化策略,得到目标驾驶策略。
在一种实施方式中,样本构建单元具体用于:将目标状态输入待优化策略,以使待优化策略输出结束状态和目标窗口;在目标窗口内使目标状态为起始点,使结束状态为终点,并通过曲线拟合确定目标窗口内的各轨迹点;连接各轨迹点得到运动轨迹,并生成能够控制车辆沿运动轨迹行驶的目标策略动作;将目标状态、目标策略动作和目标策略动作的奖励值构建为优化样本。
在一种实施方式中,样本构建单元具体用于:在目标窗口内拟合得到位移变化曲线;在目标窗口内拟合得到速度变化曲线;匹配位移变化曲线和速度变化曲线中的各点,以确定目标窗口内的各轨迹点。
在一种实施方式中,样本构建单元具体用于:在目标窗口内拟合得到位移变化曲线;在目标窗口内拟合速度变化曲线时与位移变化曲线进行匹配,以确定目标窗口内的各轨迹点。
在一种实施方式中,样本构建单元具体用于:在目标窗口内拟合得到速度变化曲线;在目标窗口内拟合位移变化曲线时与速度变化曲线进行匹配,以确定目标窗口内的各轨迹点。
在一种实施方式中,拉格朗日目标函数含用于约束成本函数的正则化项。
在一种实施方式中,在任意一次迭代中执行如下优化步骤:固定拉格朗日乘子和成本函数,通过最大化拉格朗日目标函数优化优化当前待优化策略;和/或固定当前待优化策略和成本函数,通过最小化拉格朗日目标函数优化拉格朗日乘子;和/或固定当前待优化策略和拉格朗日乘子,通过最大化拉格朗日目标函数优化成本函数。
在一种实施方式中,初始单元具体用于:确定目标驾驶策略在多个驾驶策略中的标识信息;根据标识信息计算第一奖励系数、第二奖励系数和第三奖励系数,并构建奖励函数。
在一种实施方式中,应用模块具体用于:使置信度最高的驾驶策略针对车辆当前状态输出可信策略动作;按照可信策略动作确定由多个控制指令构成的指令序列;按照指令序列控制车辆沿设定轨迹点自动行驶预设距离。
其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本实施例提供了一种车辆控制装置,能够基于驾驶策略的置信度衡量驾驶策略的风险程度,并选择置信度最高的驾驶策略来确保车辆驾驶期间始终执行最优驾驶策略,保障长尾情况下的驾驶性能的稳定性。
下面对本发明实施例提供的一种电子设备进行介绍,下文描述的一种电子设备与本文描述的其他实施例可以相互参照。
参见图4所示,本发明实施例公开了一种电子设备,包括:
存储器401,用于保存计算机程序;
处理器402,用于执行所述计算机程序,以实现上述任意实施例公开的方法。
进一步的,本发明实施例还提供了一种电子设备。其中,上述电子设备既可以是如图5所示的服务器,也可以是如图6所示的终端。图5和图6均是根据一示例性实施例示出的电子设备结构图,图中的内容不能被认为是对本发明的使用范围的任何限制。
图5为本发明实施例提供的一种服务器的结构示意图。该服务器具体可以包括:至少一个处理器、至少一个存储器、电源、通信接口、输入输出接口和通信总线。其中,所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行,以实现前述任一实施例公开的车辆控制中的相关步骤。
本实施例中,电源用于为服务器上的各硬件设备提供工作电压;通信接口能够为服务器创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本发明技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统、计算机程序及数据等,存储方式可以是短暂存储或者永久存储。
其中,操作系统用于管理与控制服务器上的各硬件设备以及计算机程序,以实现处理器对存储器中数据的运算与处理,其可以是Windows Server、Netware、Unix、Linux等。计算机程序除了包括能够用于完成前述任一实施例公开的车辆控制方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据除了可以包括应用程序的更新信息等数据外,还可以包括应用程序的开发商信息等数据。
图6为本发明实施例提供的一种终端的结构示意图,该终端具体可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
通常,本实施例中的终端包括有:处理器和存储器。
其中,处理器可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central Processing Unit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器还可以包括AI(ArtificialIntelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器至少用于存储以下计算机程序,其中,该计算机程序被处理器加载并执行之后,能够实现前述任一实施例公开的由终端侧执行的车辆控制方法中的相关步骤。另外,存储器所存储的资源还可以包括操作系统和数据等,存储方式可以是短暂存储或者永久存储。其中,操作系统可以包括Windows、Unix、Linux等。数据可以包括但不限于应用程序的更新信息。
在一些实施例中,终端还可包括有显示屏、输入输出接口、通信接口、传感器、电源以及通信总线。
本领域技术人员可以理解,图6中示出的结构并不构成对终端的限定,可以包括比图示更多或更少的组件。
下面对本发明实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与本文描述的其他实施例可以相互参照。
本发明实施例提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的车辆控制方法。其中,可读存储介质为计算机可读存储介质,其作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统、计算机程序及数据等,存储方式可以是短暂存储或者永久存储。
下面进一步介绍驾驶策略的生成过程,下文描述的内容与本文其他实施例可以相互参照。
当前自动驾驶策略用于产生车辆级别的控制命令,如:每个时刻的车辆转向、加速指令等,这种单步控制的自动驾驶策略难以实现复杂度更高的高级驾驶行为。而本实施例能够学习得到基于局部运动规划的驾驶策略,驾驶策略的输出为策略动作。
具体的,为了表示包括自我车辆、周围目标的时空信息、道路几何和导航信息等在内的驾驶环境,本实施例通过鸟瞰图(Birds-eye view,BEV)来表征车辆驾驶环境,将BEV图像作为驾驶策略的输入,也就是说:驾驶策略的输入状态不仅包括车辆的位置、速度等车辆信息,还包括车辆周围目标的时空信息、道路几何和导航信息等。驾驶策略的输出为控制车辆行驶一段距离的策略动作,根据驾驶策略的输入及输出的策略动作,并借助曲线拟合,可以生成与该策略动作对应的一条曲率连续的行驶轨迹。
给定规划窗口和起止边界条件,利用强化学习方法使驾驶策略学习起始边界条件到结束边界条件的映射。其中,起始边界条件包括车辆起始位置、航向角、速度、加速度;结束边界条件,即T时刻后的车辆行驶状态,包括车辆结束位置、航向角、速度、加速度。
在驾驶策略输出策略动作后,可相应生成一条局部轨迹曲线,将曲线按照设定执行步长进行离散化处理,即可得到一系列轨迹点及其对应的控制指令序列。
对于一条待规划路径,当已知路径的起止点位置信息,可以采用多项式曲线拟合方法产生连接起点与终点的运动轨迹。其中,路径结束点处的位姿由纵向位置、横向位置和航向角三个参数表征。
其中,结束点处的横向位置取值范围通常根据可行驶车道的数量及宽度设置为连续区间,易导致车辆出现长时间压线行驶的行为。也就是:以道路中心线为基准设置一个最大横向偏移距离,以限制的取值范围,确保车辆处于可行驶区域内,然而这将导致车辆一味准求高行驶效率,而出现长时间跨车道线行驶的行为,不符合实际驾驶要求。为鼓励车辆尽可能处于车道中心线,同时可实现变道、超车等任务,这里将取值范围设定为离散位置点集;也就是:将的取值设定在车道中心点处,考虑车辆变道、超车等驾驶行为,可设定在当前车道、左侧车道或右侧车道,因此应当具有离散的取值空间,其中、、分别为左车道、当前车道和右车道的中心点。
其中,结束点处的纵向位置通常会被设定为车辆在固定规划时间窗口内可以达到的最远距离,也就是:将路径结束点纵向位置设定为车辆在固定规划时间窗口T内可以达到的最远距离:(1)。其中为车辆最大速度。该方式虽然能够确保可行的路径-速度匹配投影,但会使得每次规划得到的轨迹执行步数固定,无法根据驾驶情况自适应调整,当出现突发紧急事件,车辆将难以做出应急避让行为,缺乏风险响应能力。为满足动态不确定场景中的车辆多样化驾驶需求,本发明将和规划窗口T均作为待学习参数,从而使驾驶策略可根据车辆所处环境的风险程度自适应调整路径长度,以实现长度可变的自适应路径规划,有效增强所生成候选路径的灵活性与风险响应能力。其中,,为车辆最远感知距离,,为最大规划窗口。也就是说:强化学习过程中,每次所生成的运动轨迹的长度不同。
对于结束点处的航向角,考虑车辆自身动力学限制,其取值范围表示为,其中为车辆最大航向角。
其中,路径结束点处的运动状态由速度、加速度两个参数表征,二者取值范围均受车辆自身动力学限制,分别表示为,,其中为车辆最大加速度。
综上所述,对于任意一个局部运动轨迹,其待学习参数包括横向位置、纵向位置、航向角、规划窗口T、速度以及加速度,因此本发明将驾驶策略的输出动作设计为,各动作分量的取值范围表示为:(2)。
在实际应用中,车辆行驶路径可行性通常会受到车辆自身动力学约束,包括转向角、安全距离等。因此路径上的任意一点的曲率必须小于目标的最大曲率限制(或最小转弯半径约束),同时所产生的可行路径还应该是曲率连续的。为满足路径可行性约束,同时降低求解空间维度,这里基于五次多项式曲线分别生成位移变化曲线和速度变化曲线,将车辆运动规划问题转化为曲线参数的搜索寻优。还可以采用其他方式进行曲线拟合,如三次多项式曲线拟合等。
位移变化曲线的生成:假设一次规划期中车辆起始状态为,驾驶策略根据状态获取到策略动作,此时已知路径起始状态为,结束状态为,采用5次多项式描述横向位置与纵向位置的变化关系:(3);其中均为路径曲线系数。
基于路径起止状态构造端点约束条件:(4)。
根据端点约束条件可以通过下式求解各系数:
(5)。
对车辆纵向位置在内等间隔采样取点,结合公式(3)与(5),可得到一系列离散轨迹点,其中采样间隔的设置与规划窗口T相关,表示为:(6)。
将轨迹点序列表示为,该序列包含个轨迹点,其中为第个中间轨迹点,该点处的车辆航向角通过下式计算:(7)。
综合航向角和各轨迹点处位置信息,即可得到该规划周期内的局部候选路径,其中,起始轨迹点,结束轨迹点。
速度变化曲线的生成:由于位移变化曲线不包含速度、加速度等车辆运动信息,为确保车辆可沿该路径行驶,还需相应地进行速度规划。已知路径起止点处的车辆运动信息,采用5次多项式描述速度与时间步的变化关系:(8);其中为局部路径的起始时间步,为速度曲线系数。为便于处理,这里令起始时间步,结束时间步等同于规划窗口大小,即。
根据起止点处的车辆运动状态构造端点约束条件:(9)。
根据端点约束条件可以通过下式求解各系数:
(10)。
同样在规划窗口内对时间步等间隔采样取点,结合公式(8)与(10),可得到一系列离散速度值。为了减小各轨迹点处位置和速度的匹配误差,这里将速度采样点数设置为路径采样点数的1/10,因此运动曲线的采样间隔设置为,产生个运动点,其中,起始运动点,结束运动点,为时刻的加速度值,通过下式估算:(11)。
将位移变化曲线和速度变化曲线进行匹配:将位移变化曲线中的各点和速度变化曲线中的各点进行匹配,可构成车辆的行驶轨迹。
首先对运动曲线(即速度变化曲线)进行积分,计算第个离散速度值处的车辆已行驶距离:(12)。根据上式可得到与运动序列相对应的第一距离序列,其中车辆行驶距离在处的速度和加速度为。
然后,基于路径序列计算行驶距离:(13)。根据上式可得到与路径序列相对应的第二距离序列,其中车辆行驶距离在处的位置和转向角为。
由于该示例中路径曲线(即位移变化曲线)和运动曲线的生成过程相对独立,无法直接按照规划步长或序列索引将其等间隔对应起来,此处设计了一种基于距离信息的路径-运动状态匹配方法,通过对比路径序列和运动序列的累计行驶距离,实现运动点与路径点间的一一对应。即:通过对比上述第一距离序列和第二距离序列,实现速度运动点与位移点间的耦合。对于任意速度运动点,已知该点处的行驶距离应当为,按照距离值大小选取与之最接近的轨迹点索引:(14)。
为确保路径与运动状态匹配准确度,此处不直接采用路径序列中的采样点与运动点进行硬匹配,而是通过计算距离接近比,进一步根据距离接近程度计算与该运动点匹配的轨迹点位姿:(15)。其中,为距离权重,通过下式计算:(16)。
最后,综合运动与位姿信息,即可得到所需运动轨迹。
参照本示例中的前述内容,并采用强化学习框架可训练基于运动规划的驾驶策略。强化学习是一项强大的自学习技术,该框架中,策略将通过与环境交互不断进行探索与试错,可以在线产生学习样本。以这些样本为基础,可将预期累计回报最大化作为优化目标进行策略的优化,这里采用表示驾驶策略,表示最优策略,其优化过程可以表示为:(17)。其中为一次交互过程总步长,为奖励函数,通常设计为行驶效率、安全性、平稳性等量化指标的线性组合,为奖励衰减因子。期间,策略性能通过价值函数进行评估:(18)。
因此,驾驶策略的优化目标可以表示为:(19)。
为了提升驾驶安全性,同时避免策略过保守对交通效率产生负面影响,本发明在策略训练过程中引入基于安全间距的成本约束项,以实现驾驶安全和效率之间的良好平衡,则有:(20)。一般研究为了确保安全性会对驾驶策略施加严格的安全约束,不考虑安全约束对于效率的影响,可能会导致策略过于保守。本发明设计了一种与安全指数相关的成本函数,对驾驶策略目标函数进行约束,可以在确保安全性的同时,避免策略过保守。
公式(20)中,是控制安全指数下降率的松弛变量,是为了避免碰撞所设置的安全成本函数,定义为:(21)。是车辆与要避开的运动目标之间的距离,是最小安全距离,是距离相对于时间的导数,是待优化的可调参数。成本值越高意味着安全指数越低,这时安全约束也将变得更保守。采用一种可学习的成本函数,避免人为设计的成本和误差,该成本函数可以在训练期间和驾驶策略进行联合优化。
为求解式(20)中带约束的策略优化问题,构建拉格朗日函数作为目标函数:(22);其中,为拉格朗日乘子网络,用于处理状态约束。基于该目标函数,可以实现驾驶策略和成本函数的联合学习。
为了避免成本函数值过高影响效率,这里在目标函数中添加一个与成本值相关的正则化项,则有:(23)。通过引入与成本值大小相关的正则化项,防止策略过保守,实现效率上的提升。其中,和均为超参数,取值在范围内。基于上述优化目标,在每个迭代周期中,策略、拉格朗日乘子以及成本函数将交替完成更新。
在每一次迭代中,可以执行如下优化步骤:固定拉格朗日乘子和成本函数,通过最大化目标函数学习策略,则有:(24)。固定策略和成本函数,通过最小化目标函数学习拉格朗日乘子,则有:(25)。固定策略和拉格朗日乘子,通过最大化目标函数学习成本函数,则有:(26)。
请参见图7,一个驾驶策略的训练过程包括以下步骤:基于策略执行环境交互,收集驾驶数据后,执行如下步骤:
①获取车辆驾驶状态,采用策略选择规划参数,并将车辆当前位姿与运动信息作为起始状态;
②基于起始位姿、结束位姿以及规划窗口,生成路径曲线;
③基于起始运动状态、结束位姿以及规划窗口,生成运动曲线;
④结合路径曲线和运动曲线进行信息匹配,生成运动轨迹;
⑤车辆执行轨迹,得到环境反馈,将驾驶数据放入数据集;
⑥判断是否达到最大交互步数,若是则结束交互,进入策略优化阶段,反之转至步骤①。
策略优化阶段:利用历史驾驶数据进行策略优化:
①从数据集中随机采样小批次数据;
②基于式(24)更新策略;
③基于式(25)更新拉格朗日乘子网络;
④基于式(26)成本函数;
⑤判断结束条件:若迭代数达到上限,则结束更新;否则,迭代数+1,转至步骤①。
可见,本实施例采用鸟瞰图作为驾驶策略状态输入表示形式,并设计基于运动规划参数的动作表示;将车辆运动规划问题转化为曲线参数的搜索寻优,设计基于驾驶策略动作输出的车辆轨迹生成方法;结合自适应安全成本函数学习驾驶策略,并设计了带有可学习安全成本函数的强化学习框架训练基于运动规划的驾驶策略,实现训练期间安全约束的自适应调节。
由于强化学习训练过程的不稳定和神经网络固有的内在不确定性,自动驾驶策略难以确保良好的安全性和稳定的驾驶性能,无法满足车辆平稳驾驶需求。本发明提出一种自适应安全约束的驾驶策略学习方法,通过将运动规划参数作为策略输出,设计基于运动规划的驾驶策略学习方法,以实现规划窗口自适应可调的车辆运动规划,确保车辆行驶轨迹的平稳性和复杂驾驶行为的实现能力,提升驾驶策略的可行性;在策略训练期间,将可学习的安全成本函数与强化学习的优化目标相结合进行自适应安全性约束,在确保驾驶安全性的同时避免过保守行为,增强策略学习稳定性,实现安全性和效率双提升。
本发明提出的一种自适应安全约束的驾驶策略学习方法,以运动规划参数作为待学习动作空间,设计面向运动规划的自动驾驶策略,实现规划窗口自适应可调的车辆运动规划,同时将可学习的安全成本函数与强化学习优化目标相结合,实现驾驶策略的自适应安全约束训练。
需要说明的是,可通过调整驾驶策略中奖励函数的奖励系数取值来调整驾驶策略的驾驶偏好,由此可确定具有不同驾驶偏好的候选策略,其中表示车辆当前驾驶状态,表示策略训练过程。策略集中包含个候选策略:(27)。这些策略可以具有相同的网络结构,但驾驶偏好或保守或激进。
为便于调整奖励函数的奖励系数,采用如下奖励函数形式:(28);其中,、和分别为车辆效率、安全和超车奖励,各奖惩项具体设置为:,和是用于调节奖励尺度的系数,是根据和动作生成局部轨迹的加加速度平方间积分:(29),表示轨迹任一点处的加速度。,是碰撞指示标志,若发生碰撞,,否则为0,是碰撞惩罚值。=,是超车指示标志,若实现超车行为,,否则为0,是超车奖励值。
通过调节各奖励项的权重可实现差异化奖励设计,这里不同的奖励权重对应于不同的驾驶保守水平。式(28)中,、和对应各奖励项系数,取值范围表示为。假设到策略的激进性逐渐增强,对于其中任意策略,其奖励系数设置为:
(30)。
基于候选策略集,这里定义一个包含所有候选动作的离散动作空间:(31);其中,任意动作将由相应的候选策略生成,(32)。
进一步,针对每个候选动作,可以按照式(33)生成相应的局部运动轨迹,以进行策略评估。,。在车辆行驶期间,驾驶策略将根据车辆每一时刻的驾驶状态选择轨迹参数,采用表示驾驶策略,则驾驶状态到动作间的映射关系可表示为,进一步采用运动规划方法生成局部运动轨迹。表示轨迹中的第个轨迹点。由于每次规划期内都将生成T个时间步的运动轨迹,为了确保车辆驾驶过程中应对突发情况的机动响应能力,在获取到局部轨迹后,车辆仅执行第一个轨迹点完成单步状态转移,同时考虑整个局部轨迹的累计奖励。
通过设置一组具有不同驾驶偏好的候选策略,后续可通过动态置信估计实时调整将要执行的策略,确保车辆驾驶性能始终是最优的,增强驾驶安全性和稳定性。也即:同一车辆上部署多个具有不同驾驶偏好的驾驶策略,并实时估计每一驾驶策略的置信度,从而实时选择置信度最高的驾驶策略来控制车辆进行自动驾驶。
置信值(即置信度)定义:一般情况下,基于强化学习的驾驶策略可以通过估计价值函数和动作-价值函数来进行性能评估,给定驾驶策略,其价值函数和动作-价值函数分别为:,(35);其中,为驾驶状态,为状态下采用策略选取的驾驶动作,为执行动作后环境反馈的奖励信号,为预定义奖励函数,为奖励衰减因子,表示驾驶策略与环境交互的时间步,表示一次交互总步长,期间交互产生的行驶数据将作为驾驶策略训练样本,表示为:(36)。
给定策略空间,强化学习的优化目标是找到一个最优策略,可以实现预期累计奖励最大化:(37)。然而如果训练期间驾驶策略探索不充分,无法产生足够的交互数据以供训练,将难以实现准确的策略评估。作为替代,这里定义一个策略置信值,用于判断不同情况下驾驶策略的可靠程度。
对于任意策略,其状态-动作值应满足以下定义:(38);其中,定义了在状态下采取策略的置信值,为历史收集数据,为策略的真实状态-动作值,为一个概率值,用于约束大于的概率。在上式中,可以理解为驾驶策略的性能下界,值越大,表示策略有信心实现良好的性能,即不太可能导致意外风险,相反,越小则意味着无法根据历史驾驶数据学习到一个足够可靠的驾驶策略来应对驾驶状态,表明存在潜在的驾驶风险情况。
相应地,可以定义一个与策略置信值相反的驾驶风险概率值来判断不同驾驶情况的风险程度,则有:(39),当值越大,意味着风险存在概率较低,因此将对一个较小的值,反之亦然。
给定驾驶策略与环境转移模型(即虚拟驾驶模型),车辆任意时刻的状态满足,假设车辆当前状态为,其一次交互过程中产生的行驶轨迹为,该轨迹的累积驾驶奖励可写为:(40)。
重复交互过程收集行驶数据,基于条交互轨迹可以构建数据集,对于任意第条交互轨迹,定义数据单元,则数据集表示为:(41)。
然后通过以下方式估计平均状态-动作值:(42)。其中,为真实策略性能评估值,是的点估计。通过采集大量样本,的估计值将逐渐收敛到。
然而,由于真实数据收集难度大,为了确保足够的训练数据量,这里将利用采集到的行驶数据对环境转移模型进行参数化学习,得到一个虚拟环境模型,然后基于产生大量虚拟数据,能够解决因真实数据不足引起的估计误差过大问题,从而降低值估计误差。这里采用高斯神经网络来构建环境转移模型:(43);其中,和分别表示高斯分布的方差和均值。因此,虚拟环境模型可以通过从真实轨迹数据中抽取数据单元进行监督训练,表示为:(44),表示高斯神经网络的监督训练过程。基于真实驾驶数据训练一个虚拟环境转移模型,然后生成虚拟行驶数据,进行驾驶策略性能估计,能够解决因真实数据不足引起的估计误差过大问题。
得到虚拟环境模型后,可以根据策略生成虚拟行驶数据:(45);其中,、和分别表示虚拟生成的输入状态、策略动作和动作奖励。进一步可基于收集到的虚拟数据集按照式(42)估计策略性能评估值。
由于基于有限真实驾驶数据学习得到的虚拟环境模型与真实环境模型之间仍存在偏差,这可能导致策略性能估计不准确。为了量化性能估计的置信度,定义分布来描述给定当前真实数据集下策略的真实值概率,即值估计的置信度。直观地说,当数据量足够大,可以进行高置信度的值估计时,分布将集中在真值附近。反之,在性能估计没有足够置信度的数据稀疏情况下,分布则会更分散。由此可结合概率约束对驾驶性能估计结果的置信度进行量化,降低估计偏差的影响。
考虑到当虚拟环境模型接近真实的环境模型时,所估计的策略性能也将接近真实性能,因此估计驾驶性能置信度的任务可以转换为估计环境模型的置信度:(46)。
根据公式(38)对于置信值的定义,置信值的估计可以通过采用概率约束对估计分布进行截断来实现,结合公式(39)中的任务等价,可以考虑基于环境模型概率分布来实现。假设存在一组环境转移模型,其中包含真实状态转移的概率大于,则有:(47),那么则置信值可通过以下方式计算:(48)。从而确定每一策略的安全下边界。其中,为按照式(42)计算的策略性能估计值(即驾驶策略的置信值)。
请参见图8,驾驶策略的置信值的计算过程包括以下步骤:给定驾驶策略,基于策略执行环境交互,收集历史驾驶数据;初始化多组参数化环境转移模型;从数据集中随机采样子数据集;分别基于每个子数据集独立训练环境转移模型:(49);基于任意环境转移模型,生成虚拟轨迹数据,根据式(42)估计驾驶策略性能值;根据式(48)计算驾驶策略的置信值。
基于策略置信值选取驾驶风险最小的策略生成车辆执行动作,确保驾驶性能始终是最优的。针对具有不同驾驶偏好的候选策略,通过采集驾驶数据来估计策略置信值,然后选择其中风险程度最小的策略作为车辆将要执行的驾驶策略,确保车辆在面对长尾场景时依然能够进行可靠决策。可信动作 (50)。因此,驾驶期间车辆动作生成过程可表示为如下步骤:获取车辆驾驶状态;对于任意候选策略,计算置信值;生成动态可信动作;车辆执行动作,转移至下一驾驶状态。
本发明为了确保驾驶过程的可靠性,基于差异化奖励权项构建多个具有不同驾驶偏好的候选策略,采用基于动态置信估计的性能评估方法衡量驾驶策略的风险程度,通过选择风险程度最小的策略生成可信驾驶动作,确保车辆驾驶期间始终执行最优驾驶策略,提升长尾情况下的驾驶性能稳定性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (19)
1.一种车辆控制方法,其特征在于,包括:
获取多个驾驶策略;
分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集;所述策略动作用于控制车辆沿设定轨迹点行驶预设距离;
根据所述运行三元集分别计算每个驾驶策略的运行估计值,并根据所述运行估计值分别确定每个驾驶策略的置信度;
在所述多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶;
其中,所述分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集,包括:
针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集所述真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态及策略动作;在自动驾驶结束后,汇总各次的输入状态及策略动作,得到训练样本;
利用所述训练样本和当前驾驶策略训练得到虚拟驾驶模型;
利用当前驾驶策略和所述虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
2.根据权利要求1所述的方法,其特征在于,所述分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集,包括:
针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集所述真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态、策略动作及动作奖励;
在自动驾驶结束后,汇总各次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
3.根据权利要求1所述的方法,其特征在于,所述分别运行每个驾驶策略,包括:
分别利用每个驾驶策略控制同一真实车辆进行自动驾驶,以在同一真实车辆上分别运行每个驾驶策略。
4.根据权利要求1所述的方法,其特征在于,所述利用所述训练样本和当前驾驶策略训练得到虚拟驾驶模型,包括:
将所述训练样本和当前驾驶策略训练预设的高斯神经网络模型,得到所述虚拟驾驶模型。
5.根据权利要求1所述的方法,其特征在于,所述利用所述训练样本和当前驾驶策略训练得到虚拟驾驶模型,包括:
将所述训练样本划分为至少两个子样本集;
利用每个子样本集和当前驾驶策略分别训练一个子模型,得到至少两个子模型;
在所述至少两个子模型中选择模型评估值最低的子模型作为所述虚拟驾驶模型。
6.根据权利要求5所述的方法,其特征在于,所述在所述至少两个子模型中选择模型评估值最低的子模型作为所述虚拟驾驶模型,包括:
计算每个子模型在所述训练样本上的模型评估值;
选择模型评估值最低的子模型作为所述虚拟驾驶模型。
7.根据权利要求1所述的方法,其特征在于,所述利用当前驾驶策略和所述虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集,包括:
若当前迭代次数未超出预测总次数,则获取前一次输入状态及前一次策略动作;将前一次输入状态及前一次策略动作输入所述虚拟驾驶模型,以使所述虚拟驾驶模型输出当前输入状态;
使当前驾驶策略根据当前输入状态输出当前策略动作;
使当前驾驶策略对应的奖励函数根据当前策略动作计算当前动作奖励;
将当前输入状态、当前策略动作和当前动作奖励构建为三元组,并将所述三元组作为当前驾驶策略的运行三元集中的一个元素;
将当前输入状态作为前一次输入状态,将当前策略动作作为前一次策略动作,并使当前迭代次数递增一,然后判断当前迭代次数是否超出预测总次数。
8.根据权利要求7所述的方法,其特征在于,所述奖励函数为:r =λ e ×r e +λ s ×r s +λ ot × r ot ;r为当前动作奖励,λ e 为当前驾驶策略的第一奖励系数,λ s 为当前驾驶策略的第二奖励系数,λ ot 为当前驾驶策略的第三奖励系数,r e 为当前车辆效率,r s 为当前安全奖励,r ot 为当前超车奖励。
9.根据权利要求1所述的方法,其特征在于,所述多个驾驶策略中的任意驾驶策略i的第一奖励系数、第二奖励系数和第三奖励系数的计算公式包括:
λ e,i =λ e,max -[(i-1)(λ e,max -λ e,min )]/m;
λ s,i =λ s,min -[i(λ s,max -λ s,min )]/m;
λ ot,i =λ ot,min -[i(λ ot,max -λ ot,min )]/m;
其中,λ e,i 为驾驶策略i的第一奖励系数,λ s,i 为驾驶策略i的第二奖励系数,λ ot,i 为驾驶策略i的第三奖励系数,λ e,max 为第一奖励系数对应的预设最大值,λ e,min 为第一奖励系数对应的预设最小值,λ s,max 为第二奖励系数对应的预设最大值,λ s,min 为第二奖励系数对应的预设最小值,λ ot,max 为第三奖励系数对应的预设最大值,λ ot,min 为第三奖励系数对应的预设最小值,m为驾驶策略的总个数。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述多个驾驶策略中的任意目标驾驶策略的生成过程包括:
设定奖励函数,并构建包括所述奖励函数的初始策略;
利用强化学习方法训练所述初始策略,得到待优化策略;
利用所述待优化策略构建优化样本;
在成本函数的约束下,以最大奖励为求解目标,构建拉格朗日目标函数;
利用所述优化样本迭代求解所述拉格朗日目标函数,以优化所述待优化策略,得到所述目标驾驶策略。
11.根据权利要求10所述的方法,其特征在于,所述利用所述待优化策略构建优化样本,包括:
将目标状态输入所述待优化策略,以使所述待优化策略输出结束状态和目标窗口;
在所述目标窗口内使所述目标状态为起始点,使所述结束状态为终点,并通过曲线拟合确定所述目标窗口内的各轨迹点;
连接各轨迹点得到运动轨迹,并生成能够控制车辆沿所述运动轨迹行驶的目标策略动作;
将所述目标状态、所述目标策略动作和所述目标策略动作的奖励值构建为所述优化样本。
12.根据权利要求11所述的方法,其特征在于,所述通过曲线拟合确定所述目标窗口内的各轨迹点,包括:
在所述目标窗口内拟合得到位移变化曲线;
在所述目标窗口内拟合得到速度变化曲线;
匹配所述位移变化曲线和所述速度变化曲线中的各点,以确定所述目标窗口内的各轨迹点。
13.根据权利要求11所述的方法,其特征在于,所述通过曲线拟合确定所述目标窗口内的各轨迹点,包括:
在所述目标窗口内拟合得到位移变化曲线;
在所述目标窗口内拟合速度变化曲线时与所述位移变化曲线进行匹配,以确定所述目标窗口内的各轨迹点。
14.根据权利要求11所述的方法,其特征在于,所述通过曲线拟合确定所述目标窗口内的各轨迹点,包括:
在所述目标窗口内拟合得到速度变化曲线;
在所述目标窗口内拟合位移变化曲线时与所述速度变化曲线进行匹配,以确定所述目标窗口内的各轨迹点。
15.根据权利要求10所述的方法,其特征在于,所述设定奖励函数,包括:
确定所述目标驾驶策略在所述多个驾驶策略中的标识信息;
根据所述标识信息计算第一奖励系数、第二奖励系数和第三奖励系数,并构建所述奖励函数。
16.根据权利要求1至9任一项所述的方法,其特征在于,所述在所述多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶,包括:
使置信度最高的驾驶策略针对车辆当前状态输出可信策略动作;
按照所述可信策略动作确定由多个控制指令构成的指令序列;
按照所述指令序列控制车辆沿设定轨迹点自动行驶预设距离。
17.一种车辆控制装置,其特征在于,包括:
获取模块,用于获取多个驾驶策略;
收集模块,用于分别运行每个驾驶策略,并收集每个驾驶策略运行过程中每一次的输入状态、策略动作及动作奖励,得到每个驾驶策略的运行三元集;所述策略动作用于控制车辆沿设定轨迹点行驶预设距离;
评估模块,用于根据所述运行三元集分别计算每个驾驶策略的运行估计值,并根据所述运行估计值分别确定每个驾驶策略的置信度;
应用模块,用于在所述多个驾驶策略中选择置信度最高的驾驶策略用于车辆的自动驾驶;
其中,所述收集模块包括:
样本准备单元,用于针对每一驾驶策略,利用当前驾驶策略控制真实车辆进行自动驾驶,并收集所述真实车辆自动驾驶过程中当前驾驶策略每一次的输入状态及策略动作;在自动驾驶结束后,汇总各次的输入状态及策略动作,得到训练样本;
训练单元,用于利用所述训练样本和当前驾驶策略训练得到虚拟驾驶模型;
生成单元,用于利用当前驾驶策略和所述虚拟驾驶模型生成多次的输入状态、策略动作及动作奖励,得到当前驾驶策略的运行三元集。
18.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至16任一项所述的方法。
19.一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至16任一项所述的方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202311662491.1A CN117360552B (zh) | 2023-12-06 | 2023-12-06 | 一种车辆控制方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202311662491.1A CN117360552B (zh) | 2023-12-06 | 2023-12-06 | 一种车辆控制方法、装置、设备及可读存储介质 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN117360552A CN117360552A (zh) | 2024-01-09 |
| CN117360552B true CN117360552B (zh) | 2024-03-26 |
Family
ID=89404464
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202311662491.1A Active CN117360552B (zh) | 2023-12-06 | 2023-12-06 | 一种车辆控制方法、装置、设备及可读存储介质 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN117360552B (zh) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116661299A (zh) * | 2023-03-30 | 2023-08-29 | 重庆长安汽车股份有限公司 | 自动驾驶混合决策控制方法及系统 |
| CN116853243A (zh) * | 2023-08-22 | 2023-10-10 | 吉林大学 | 一种基于投影约束策略优化的车辆自适应巡航控制方法 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20200033869A1 (en) * | 2018-07-27 | 2020-01-30 | GM Global Technology Operations LLC | Systems, methods and controllers that implement autonomous driver agents and a policy server for serving policies to autonomous driver agents for controlling an autonomous vehicle |
| CN111061277B (zh) * | 2019-12-31 | 2022-04-05 | 歌尔股份有限公司 | 一种无人车全局路径规划方法和装置 |
-
2023
- 2023-12-06 CN CN202311662491.1A patent/CN117360552B/zh active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN116661299A (zh) * | 2023-03-30 | 2023-08-29 | 重庆长安汽车股份有限公司 | 自动驾驶混合决策控制方法及系统 |
| CN116853243A (zh) * | 2023-08-22 | 2023-10-10 | 吉林大学 | 一种基于投影约束策略优化的车辆自适应巡航控制方法 |
Non-Patent Citations (2)
| Title |
|---|
| Changxi You ect..<Robotics and Autonomous Systems>.2019,第114卷1-18. * |
| 欧阳可可.《中国优秀硕士学位论文全文数据库工程科技Ⅱ辑》.2023,(第01期),1-55. * |
Also Published As
| Publication number | Publication date |
|---|---|
| CN117360552A (zh) | 2024-01-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109655066B (zh) | 一种基于Q(λ)算法的无人机路径规划方法 | |
| CN112888612B (zh) | 自动驾驶车辆规划 | |
| CN113044064B (zh) | 基于元强化学习的车辆自适应的自动驾驶决策方法及系统 | |
| JP7282271B2 (ja) | 混合自律車両隊列の直接および間接制御 | |
| WO2021238303A1 (zh) | 运动规划的方法与装置 | |
| CN118790287B (zh) | 基于生成式世界大模型和多步强化学习的自动驾驶决策方法及系统 | |
| US12536351B2 (en) | Motion planning | |
| CN114261400B (zh) | 一种自动驾驶决策方法、装置、设备和存储介质 | |
| US20250021714A1 (en) | Generating simulation environments for testing autonomous vehicle behaviour | |
| CN118192577A (zh) | 一种基于强化学习的无人车自主作业决策方法及系统 | |
| Ge et al. | Deep reinforcement learning navigation via decision transformer in autonomous driving | |
| CN120467325A (zh) | 一种未知动态环境中人机混合自主导航系统 | |
| CN117406756B (zh) | 一种运动轨迹参数的确定方法、装置、设备和存储介质 | |
| Lucente et al. | DeepGame-TP: Integrating dynamic game theory and deep learning for trajectory planning | |
| CN117360552B (zh) | 一种车辆控制方法、装置、设备及可读存储介质 | |
| CN119620634B (zh) | 一种人机协同驾驶仿真方法、装置、设备及存储介质 | |
| CN120610568A (zh) | 基于多模态感知与强化学习的电力无人机避障方法及系统 | |
| CN118144805B (zh) | 一种自适应交通决策引擎的训练方法及装置 | |
| CN114987553B (zh) | 自动驾驶车辆控制方法和装置 | |
| US20250225051A1 (en) | Simulation-based testing for robotic systems | |
| CN120563943B (zh) | 基于强化学习的模型训练方法、装置、设备及存储介质 | |
| Cruz et al. | Reinforcement learning in navigation and cooperative mapping | |
| Türkmen | A comparative study of nonlinear model predictive control and reinforcement learning for path tracking | |
| Sakthivel et al. | Intelligent systems context-aware adaptive reinforcement learning approach for autonomous vehicles | |
| CN120440060A (zh) | 一种基于手势的车辆控制方法、系统、装置、设备及介质 |
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 |