CN116224996A - 一种基于对抗强化学习的自动驾驶优化控制方法 - Google Patents

一种基于对抗强化学习的自动驾驶优化控制方法 Download PDF

Info

Publication number
CN116224996A
CN116224996A CN202211715787.0A CN202211715787A CN116224996A CN 116224996 A CN116224996 A CN 116224996A CN 202211715787 A CN202211715787 A CN 202211715787A CN 116224996 A CN116224996 A CN 116224996A
Authority
CN
China
Prior art keywords
scene
vehicle
countermeasure
reinforcement learning
training
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.)
Pending
Application number
CN202211715787.0A
Other languages
English (en)
Inventor
王琳
刘克宇
周俊洁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN202211715787.0A priority Critical patent/CN116224996A/zh
Publication of CN116224996A publication Critical patent/CN116224996A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Abstract

本发明涉及一种基于对抗强化学习的自动驾驶优化控制方法,包括以下步骤:设计对抗智能体控制部分关键场景因素,以构建对抗场景;利用对抗场景对车辆进行训练,得到优化后的驾驶算法;将优化后的驾驶算法应用于车辆控制器,以相应控制车辆的行驶状态。与现有技术相比,本发明在给定场景下,为本车设计第1代强化学习的驾驶策略,再采用不完全零和博弈构建对抗过程,生成多个对抗智能体与本车的驾驶算法进行对抗,不断迭代优化本车驾驶算法的鲁棒性。由此基于对抗强化学习的方式,以迭代优化得到鲁棒性增强的自动驾驶算法,从而有效提升自动驾驶控制的效率和场景鲁棒性。

Description

一种基于对抗强化学习的自动驾驶优化控制方法
技术领域
本发明涉及自动驾驶技术领域,尤其是涉及一种基于对抗强化学习的自动驾驶优化控制方法。
背景技术
自动驾驶技术有助于减少环境污染、改善交通拥堵合、减少交通事故,是当前极具前景的研究方向。以深度强化学习为代表的驾驶算法在近年来成为了自动驾驶领域的研究热点,但大量研究表明,强化学习驾驶算法在场景迁移上存在鲁棒性难题,迁移到未知场景后表现较差。
目前主要的解决方案是在新的对抗场景下对算法进行再训练,即通过数据驱动或数学优化的方法针对性地找到会使驾驶车辆具有较差表现的对抗场景,再将驾驶算法放在对抗场景下进行训练,以获得更好的鲁棒性和可迁移性。其中,基于数据驱动的方法是通过概率分布模型在自然交通数据流中采样对抗场景,能够获得更加真实的训练场景;而基于数学优化的方法则是将场景参数化,通过数学建模和智能算法优化参数并得到对抗场景,测试效率高且成本低。
由此可知,在以往的自学习型驾驶算法优化方法中,上述两类方案均存在一定的缺陷:基于数据驱动的方法中需要获取大量的真实交通数据,且搜索到的有效对抗场景比例低、耗时长,导致获得高鲁棒性的强化学习驾驶算法的成本较高;基于数学优化的方法会设置一个零和博弈的对抗智能体控制场景参数,基于深度强化学习训练对抗智能体干扰本车的驾驶过程,再固定对抗智能体的策略,训练本车的自学习型驾驶算法,不断迭代优化本车自学习型驾驶算法的鲁棒性,该方案能有效降低强化学习驾驶算法的优化成本,但由于其设计的是一对一的零和博弈对抗学习过程,会导致对抗智能体的对抗行为激进,不符合现实交通情况,同时单个对抗智能体的对抗策略有限,其策略逐渐会陷入局部最优处,也难以提供丰富的再训练环境,只能提升驾驶算法在一类特定对抗场景下的鲁棒性。最终使得应用驾驶算法在控制车辆时,无法解决车辆在复杂场景下的决策规划难题,不能很好地适应多种不同的驾驶场景。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于对抗强化学习的自动驾驶优化控制方法,基于对抗强化学习的方式,以迭代优化得到鲁棒性增强的自动驾驶算法,进而提升自动驾驶控制的效率和场景丰富度。
本发明的目的可以通过以下技术方案来实现:一种基于对抗强化学习的自动驾驶优化控制方法,包括以下步骤:
S1、设计对抗智能体控制部分关键场景因素,以构建对抗场景;
S2、利用对抗场景对车辆进行训练,得到优化后的驾驶算法;
S3、将优化后的驾驶算法应用于车辆控制器,以相应控制车辆的行驶状态。
进一步地,所述步骤S1具体是通过生成多个非零和博弈对抗智能体,由对抗智能体与本车进行对抗,所述本车和对抗智能体的对抗目标为:
Figure BDA0004023464940000021
其中,μego和μsat分别是本车智能体和场景智能体的的策略函数,
Figure BDA0004023464940000022
是优化目标,Gt为积累回报,St为环境状态随机变量,γ为回报折扣,Rn为环境提供的回报随机变量,与环境、本车智能体、场景智能体以及其他场景元素有关。
进一步地,所述本车智能体的策略函数μego的优化目标为优化策略函数得到最大的积累回报;所述场景智能体为了对抗本车,优化目标是优化策略函数最小化该积累回报,使得本车智能体做出较差的决策。
进一步地,所述场景车辆的回报函数为
Figure BDA0004023464940000023
其中,
Figure BDA0004023464940000024
为对抗智能体的奖励,/>
Figure BDA0004023464940000025
为本车的奖励,Rreg是正则项优化目标,用于奖励对抗智能体产生更加符合现实的场景,α是控制场景的对抗程度的对抗调控因子,α越大则对抗项占比越大,智能体对抗行为越强,反之则正则项占比越大,智能体的行为更加理性,生成的场景更符合现实。
进一步地,所述步骤S1具体包括以下步骤:
S11、采用actor-critc架构的TD3深度强化学习算法设计对抗智能体,设计状态值si,可选环境配置动作ai,TD3算法包含一个动作网络μ(siμ)和两个策略网络
Figure BDA0004023464940000031
和/>
Figure BDA0004023464940000032
以及它们对应的目标网络μ′(siμ′)、/>
Figure BDA0004023464940000033
和/>
Figure BDA0004023464940000034
S12、对抗智能体的训练步骤为:
随机初始化TD3网络θμ
Figure BDA0004023464940000035
和/>
Figure BDA0004023464940000036
并将参数赋给对应的策略网络,即θμ′=θμ′
Figure BDA0004023464940000037
获取场景智能体所需的的环境状态si
设计TD3深度强化学习的神经网络结构μ(siμ),根据状态值si输出可选环境配置动作:
Figure BDA0004023464940000038
其中c为噪声的对称截断阈值,aLow和aHigh为动作的截断阈值;
施加动作ai后得到下一个环境状态si+1,每步的奖励ri′是根据非零和博弈奖励函数$
Figure BDA0004023464940000039
$获得的;
至此得到了单步经验(si,ai,si+1,ri),将本次经验放入经验池D中;
从经验池D中采样N次经验,并计算三个网络的代价函数:
Figure BDA00040234649400000310
Figure BDA00040234649400000311
/>
Figure BDA00040234649400000312
其中yi为目标值,计算方式为:
Figure BDA00040234649400000313
采用梯度下降法更新网络参数:
Figure BDA00040234649400000314
Figure BDA00040234649400000315
Figure BDA00040234649400000316
其中αμ和αQ分别是actor网络和critic网络的学习率;
每隔固定步长d后更新目标网络参数
θμ′=τθμ+(1-τ)θμ′
Figure BDA00040234649400000317
其中τ∈(0,1),为目标网络更新比例;
重复执行上述步骤,直到达到设定的步长或奖励达到设定值后停止训练;
S13、测试本车在生成的对抗场景下的成功率,如果在设定阈值范围内,将生成的对抗智能体构建的对抗场景放入场景库L中,否则抛弃掉该场景;
S14、重复步骤S11~S13,直至生成期望数量Ns的对抗场景。
进一步地,所述步骤S2具体是将生成得到的多个对抗场景提供给本车进行训练,在本车每回合训练时采样出一个不同的场景提供给本车进行训练。
进一步地,所述步骤S2使用优先成功率方法从场景库中筛选出训练场景,假设共有n个场景,在训练过程中实时统计本车在n个场景中的任务成功率,根据任务成功率从低到高进行排序,记场景Si的排名为rank(Si),则Si被采样到的概率p(i)为
Figure BDA0004023464940000041
其中,δ∈Z为随机扰动,场景i归一化后的采样概率P(i)即为
Figure BDA0004023464940000042
进一步地,所述步骤S2具体包括以下过程:
S21、首先训练本车初始第一代强化学习驾驶算法,之后初始化数组T[N]和A[N],用于分别记录场景库L中N个场景的使用次数和本车在场景中的任务成功率;
S22、根据A[N]从低到高对各场景的排序,得到每个Si场景的rank(Si),i=0,1,...,N,并计算采样概率:
Figure BDA0004023464940000043
其中,随机扰动δ∈Z;
S23、根据计算出的概率值采样出场景Si
S24、本车在场景Si中完成一个回合的训练;
S25、更新场景Si的成功率,并更新场景Si的使用次数T[i]=T[i]+1;
S26、重复步骤S22~S25,直到本车在各场景中的成功率达到期望值,至此得到下一代本车的驾驶算法;
S27、重复进行下一轮优化,直到达到期望的优化次数Nopt为止。
进一步地,所述步骤S21中训练本车初始第一代强化学习驾驶算法的具体过程为:
1.根据任务场景选择深度强化学习算法,设计状态值si,可选环境配置动作ai和奖励函数Rego
2.选择训练场景,将本车放在该场景中进行训练;
3.获取车辆和环境状态si
4.驾驶算法根据状态值si输出可选环境配置动作ai
5.根据奖励函数Rego计算当前环境配置动作的奖励值ri,执行动作ai后的状态si+1对完成任务越有利,本车强化学习智能体获得的奖励越高;
6.重复执行步骤3~5,直到本车在场景中达到预期成功率或最大训练步长为止。
进一步地,所述步骤S25中场景Si的成功率具体为:
Figure BDA0004023464940000051
其中,A[i]为场景Si对应的成功率。
与现有技术相比,本发明为了克服强化学习算法的鲁棒性难题以及两种现有优化技术存在的低效率和低场景丰富度的缺陷,提出一种基于对抗强化学习的自动驾驶算法优化方法。在给定场景下,为本车设计第1代强化学习的驾驶策略,再采用不完全零和博弈构建对抗过程,生成多个对抗智能体与本车的驾驶算法进行对抗,不断迭代优化本车驾驶算法的鲁棒性。本发明提出的方法对以强化学习为代表的学习型驾驶算法具有普适性,并不局限于超车换道场景,还可以应用到如泊车、十字路口转向和高速路口汇入汇出等各种自动驾驶汽车的行为决策中,通过设计出具有高鲁棒性的强化学习驾驶算法,使得驾驶算法在场景迁移时具有更好的适应性,进而有效提升自动驾驶控制的效率和场景丰富度。
附图说明
图1为本发明的方法流程示意图;
图2为实施例中换道超车场景示意图;
图3为实施例中对抗调控因子的值对生成的场景的影响示意图;
图4a为实施例中本车在鲁棒性提升阶段的回报数据示意图;
图4b为实施例中本车在鲁棒性提升阶段的成功率和失败率数据示意图;
图5a~5d为实施例中本车智能体优化前后在不同场景中的表现;
图6为实施例中各代驾驶算法在各个测试场景中的成功率对比示意图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。
实施例
如图1所示,一种基于对抗强化学习的自动驾驶优化控制方法,包括以下步骤:
S1、设计对抗智能体控制部分关键场景因素,以构建对抗场景;
S2、利用对抗场景对车辆进行训练,得到优化后的驾驶算法;
S3、将优化后的驾驶算法应用于车辆控制器,以相应控制车辆的行驶状态。
本实施例应用上述技术方案,主要内容包括:
一、场景生成
为了解决强化学习驾驶算法在场景迁移时的鲁棒性难题,本技术方案提出了一种基于对抗强化学习的自动驾驶算法设计方法,核心在于设计对抗智能体控制部分关键场景因素构建对抗场景。通过生成这样的多个非零和博弈对抗智能体与本车进行对抗,提升本车驾驶算法应对不同的场景的鲁棒性。本车和对抗智能体的对抗目标为
Figure BDA0004023464940000061
其中μego和μsat分别是本车智能体和场景智能体的的策略函数,
Figure BDA0004023464940000062
是优化目标,Gt为积累回报,St为环境状态随机变量,γ为回报折扣,Rn为环境提供的回报随机变量,与环境、本车智能体、场景智能体以及其他场景元素有关。本车智能体实施决策后,得到的积累回报Gt越高意味着做出的决策越好,智能体会选取最大的状态-动作值对应的动作获取最大的积累回报。因此,本车智能体的策略函数μego的优化目标为优化策略函数得到最大的积累回报。场景智能体为了对抗本车,优化目标是优化策略函数最小化该积累回报,使得本车智能体做出较差的决策。
当本车和场景智能体的策略均采用强化学习算法时,由公式(1)可推导出场景车辆的回报函数为
Figure BDA0004023464940000063
其中
Figure BDA0004023464940000071
为对抗智能体的奖励,/>
Figure BDA0004023464940000072
为本车的奖励,可以看出对抗智能体的奖励与本车恰好相反,是零和博弈的过程。为了避免激进的对抗行为,在公式(2)中引入松弛回报项构造不完全零和博弈对抗过程,回报函数为
Figure BDA0004023464940000073
其中,Rreg是正则项优化目标,用于奖励对抗智能体产生更加符合现实的场景,例如使得动态的环境车辆不要故意碰撞本车或者静态的弯道曲率不会过大等,α是控制场景的对抗程度的对抗调控因子,使场景智能体产生不同的对抗行为,进而识别出驾驶算法的多类弱点。α越大则对抗项占比越大,智能体对抗行为越强,反之则正则项占比越大,智能体的行为更加理性,生成的场景更符合现实。
此后,选取合适的深度强化学习算法设计和训练对抗智能体的决策函数μsat即可。完成优化后,需要剔除过于激进或温和的场景,前者对本车驾驶算法而言不可解,后者难度过低,均缺少训练价值。例如只将使得本车任务成功率为10%~90%之间的场景加入场景库中,其他则抛弃。
通过选取不同的网络初始化参数和对抗调控因子α的值,能使得各个对抗智能体陷入不同的局部最优处,表现出不同的对抗策略,为本车提供丰富的对抗环境。此外这些对抗智能体的训练步长不宜过长,通常小于本车一个数量级以上,这样既能够提高场景生成效率,又可以避免对抗智能体的策略函数趋向全局最优。
二、鲁棒性提升
鲁棒性提升阶段主要做的是将场景生成阶段得到的多个对抗场景提供给本车进行训练。在本车每回合训练时采样出一个不同的场景提供给本车进行训练,提升本车在不同场景中的鲁棒性。
为了提高训练的效率,低成功率场景应该更多地被采用出来,为此使用优先成功率方法从场景库中筛选出训练场景。具体而言,令一共有n个场景,在训练过程中实时统计本车在n个场景中的任务成功率,根据任务成功率从低到高进行排序,记场景Si的排名为rank(Si),则Si被采样到的概率p(i)为
Figure BDA0004023464940000074
其中,δ∈Z为随机扰动。场景i归一化后的采样概率P(i)即为
Figure BDA0004023464940000075
三、迭代优化
不断重复场景生成和鲁棒性提升,得到了多代本车的强化学习驾驶算法。多次优化后的驾驶算法能够更好地应对不同场景,在场景迁移时也有着更好的鲁棒性。
本实施例的实施步骤主要分为三个部分,详细说明如下:
Step1、训练本车第1代强化学习驾驶算法
1.根据任务场景选择合适的深度强化学习算法,设计状态值si,可选环境配置动作ai和奖励函数Rego
2.选择合适的训练场景,将本车放在场景中进行训练;
3.获取车辆和环境状态si
4.驾驶算法根据状态值si输出可选环境配置动作ai
5.根据奖励函数Rego计算当前环境配置动作的奖励值ri,执行动作ai后的状态si+1对完成任务越有利,本车强化学习智能体获得的奖励越高;
6.重复执行步骤3~5,直到本车在场景中达到预期的成功率或最大训练步长为止。
Step2、场景生成
1.采用actor-critc架构的TD3深度强化学习算法设计对抗智能体(可根据具体场景选择其他合适的深度强化学习算法),设计状态值si,可选环境配置动作ai。TD3算法包含一个动作网络μ(siμ)和两个策略网络
Figure BDA0004023464940000081
和/>
Figure BDA0004023464940000082
以及它们对应的目标网络μ′(siμ′)、/>
Figure BDA0004023464940000083
和/>
Figure BDA0004023464940000084
对抗智能体的训练步骤为:
1.1.随机初始化TD3网络θμ
Figure BDA0004023464940000085
和/>
Figure BDA0004023464940000086
并将参数赋给对应的策略网络,即θμ′=θμ′
Figure BDA0004023464940000087
1.2.获取场景智能体所需的的环境状态si
1.3.设计TD3深度强化学习的神经网络结构μ(siμ),根据状态值si输出可选环境配置动作
Figure BDA0004023464940000088
其中c为噪声的对称截断阈值,aLow和aHigh为动作的截断阈值。神经网络的输入层节点数由输入状态的属性数量决定,输出层节点数由可选环境配置动作数量决定;隐含层用于提取环境特征并进行决策,其结构和参数需要根据环境复杂度和计算机算力等因素调试;
1.4.施加动作ai后得到下一个环境状态si+1,每步的奖励ri′是根据非零和博弈奖励函数
Figure BDA0004023464940000091
获得的。至此得到了单步经验(si,ai,si+1,ri),将本次经验放入经验池D中;
1.5.从经验池D中采样N次经验,并计算三个网络的代价函数
Figure BDA0004023464940000092
Figure BDA0004023464940000093
Figure BDA0004023464940000094
其中yi为目标值,计算方式为
Figure BDA0004023464940000095
1.6.采用梯度下降法更新网络参数
Figure BDA0004023464940000096
Figure BDA0004023464940000097
Figure BDA0004023464940000098
其中αμ和αQ分别是actor网络和critic网络的学习率;
1.7.每隔固定步长d后更新目标网络参数
θμ′=τθμ+(1-τ)θμ′
Figure BDA0004023464940000099
其中τ∈(0,1),为目标网络更新比例;
1.8.重复执行步骤1.2~1.6,直到达到设定的步长(通常小于本车的训练步长一个数量级以上)或奖励达到设定值后停止训练;
2.测试本车在生成的对抗场景下的成功率,如果在10%~90%之间,将生成的对抗智能体构建的对抗场景放入场景库L中,否则抛弃掉该场景;
3.重复步骤1~2,直到生成了期望数量Ns的对抗场景。
Step3、鲁棒性提升
1.初始化数组T[N]和A[N]用于分别记录场景库L中N个场景的使用次数和本车在场景中的任务成功率;
2.根据A[N]从低到高对各场景的排序,得到每个Si场景的rank(Si),i=0,1,...,N,并计算采样概率
Figure BDA0004023464940000101
随机扰动δ∈Z取0值附近的一个较小范围即可,例如{-2,-1,0,1,2};
3.根据计算出的概率值采样出场景Si
4.本车在场景Si中完成一个回合的训练;
5.更新场景Si的成功率;
Figure BDA0004023464940000102
更新场景Si的使用次数T[i]=T[i]+1;
6.重复步骤2~5,直到本车在各场景中的成功率达到期望值,至此得到下一代本车的驾驶算法;
7.重复Step2进行下一轮优化,直到达到期望的优化次数Nopt为止。
为验证本技术方案的有效性,本实施例设计了一个换到超车算法并在Carla中进行了仿真实现。
场景设置,搭建了如图2所示的换道超车场景。对于该逻辑场景,其中静态环境包括两条相邻的直行车道和其他无关的房屋和树木等,动态元素为受到场景智能体控制的前车和邻车,两辆红车行驶较为缓慢且有一定间距,本车试图在合适的时机换道以超过两辆车。本实施例对场景进行了适当的简化,设定相邻和前方车辆无变道行为,仅行驶在自己当前的车道上。逻辑场景设置如表所示,涉及车辆初始位置、速度等参数和相关运动约束。设置本车辆的初始速度符合高斯分布
Figure BDA0004023464940000103
(5,1)m/s,相邻和前方车辆的初始速度符合高斯分布
Figure BDA0004023464940000104
(3,1)m/s。根据《中华人民共和国交通管理法规》,正常道路行驶时应该保持三秒距离,本车车速为/>
Figure BDA0004023464940000105
(5,1)m/s时,设置本车和前车初始纵向距离为高斯分布/>
Figure BDA0004023464940000106
(21,2.0)m,可以保证99.73%以上的初始条件满足法规。设置本车和邻车初始纵向距离为/>
Figure BDA0004023464940000107
(3,2.0)m。为保证运动过程的舒适性中,设置各个车辆速度范围为0~10m/s,加速度不超过1m/s2
本车驾驶算法设置,本车采用分层控制结构,上层决策层采用PPO深度强化学习算法,下层控制层采用PID算法。
决策层的状态空间为连续三帧高281px、宽141px的激光雷达点云图以及车辆速度vego、角速度wego数据。动作空间划分为9个离散动作如表1所示。
表1 本车智能体动作空间
Figure BDA0004023464940000111
PPO网络结构如表2所示。
表2 本车PPO算法的网络结构
Figure BDA0004023464940000112
a actor和critic网络结构的值是一个元组,其中从左到右的元素表示网络中从前往后各个隐藏层的神经元个数
奖励设计为
Figure BDA0004023464940000113
本车成功从两车中间换道超车后获得奖励,如果发生碰撞则受到惩罚。但奖励和惩罚的回报过于稀疏,为了更好地进行训练,引入了三项稠密回报。默认项鼓励本车以更快的速度前进,这是功能场景中对本车驾驶行为的描述。此外,当本车车辆与同车道上其余车辆之间的纵向间距过小或者碰撞时间过小时给与一定的惩罚,提高安全性。
本车的下层控制器采用PID控制器,能够执行决策层给定的均速、加速、减速和换道等决策动作。
场景智能体设置,设置对抗场景的关键参数为两辆红车的速度,因此对抗智能体通过控制两辆红车的车速阻碍本车超车换道,试图让本车做出错误决策,同时也需要让两辆红车保持适当的距离,否则会使得本车任务成功率为0。对抗智能体的状态输入为十维向量:
(Δxlead,Δylead,Δyawlead,Δvx,lead,Δvy,lead,Δxnear,Δynear,Δyawnear,Δvx,near,Δvy,near)
各元素依次表示前车相对于本车的纵向距离、横向距离、偏航角、纵向速度和横向速度,邻车相对于本车的纵向距离、横向距离、偏航角、纵向速度和横向速度。根据逻辑场景,前车和邻车无换道行为,只有纵向速度的变化。由于采用的是处理连续输入、连续输出决策问题的TD3深度强化学习算法,故无需对动作进行离散化。场景智能体的动作为表二元连续输出。
表3 对抗智能体的动作设置
Figure BDA0004023464940000121
TD3场景智能体接受十维的环境状态向量输入,根据状态向量输出二元连续动作,分别是前车和本车的速度增量,将动作分别传递给场景车辆的下层PID控制器进行分布式控制。TD3场景智能体的关键参数如表4所示。
表4 TD3网络的关键参数设置
Figure BDA0004023464940000122
a aclor和critic网络结构的值是一个元组,其中从左到右的元素表示网络中从前往后各个隐藏层的神经元个数
场景智能体的回报函数为
Figure BDA0004023464940000123
其中/>
Figure BDA0004023464940000124
为公式(3)中的本车回报函数,正则项为/>
Figure BDA0004023464940000131
正则项
Figure BDA0004023464940000132
用于松弛对抗行为,使得场景车辆的驾驶行为更符合功能场景和逻辑场景,不过于激进。由于功能场景是本车试图通过慢速行驶的两辆场景车辆,设置场景车辆车速低于6m/s提供正回报,鼓励场景智能体控制场景车辆慢速前进。加速度项鼓励车辆平缓行驶,保证车辆的舒适性。碰撞项惩罚是正常行驶的车辆所必须的。考虑到场景车辆间的距离太远时场景过于简单,太近时则会导致对抗场景对本车而言不可解,故期望场景车辆的间距处于一个合适的区间中,设置了一项基于期望间距的密集性奖励,其中的期望间距16m是通过实验寻找到的一个合适值。
仿真结果:通过一次迭代优化后可以得到本车第2代驾驶算法。在场景生成阶段设置α∈[0.5,1.0]得到了一系列对抗场景,本车在这些场景中的任务成功率和失败率如图3所示。在α∈[0.7,0.9]时本车的成功率在10%~90%之间,可将这些场景放入场景库中用于本车训练。
在鲁棒性提升阶段,本车的回报以及成功率和失败率变化如图4a和4b所示。从图可以看到随着再训练的进行,本车的回报函数不断上升,获得了更好的表现,其在场景库中的各种场景下的成功率不断上升,最后达到了90%附近,得到了第二代驾驶算法。
这里选取α=0.8和α=0.9的场景,展示驾驶算法在优化前后的表现,如图5a~5d所示。第1代驾驶算法在对抗场景中换道过晚导致发生碰撞,而第2代驾驶算法克服了换道迟缓的缺陷,能够找到合适的时机进行换道,做出正确的换道超车的决策。
本实施例一共进行了3轮迭代优化,得到了第1代至第4代驾驶算法,将这4代驾驶算法放在了8个测试场景中进行测试,其中在每个场景下均测试60次,结果如图6所示。具体统计数据如表5所示。
表5各代驾驶算法在测试场景中的表现
Figure BDA0004023464940000133
随着迭代优化次数的增加,本车的换道时间不断降低,成功率均值不断增加,成功率标准差不断降低,强化学习驾驶算法的平均表现和对场景的鲁棒性均得到了有效的提升。
综上可知,对于自动驾驶汽车来说,强化学习驾驶算法能够有效地解决其在复杂场景下的决策规划难题,避免人工设计。但强化学习驾驶算法在场景迁移时存在鲁棒性难题,对未知场景的适应性不强。本技术方案设计了一种基于对抗强化学习的自动驾驶算法设计方法,该方法的核心是设计非零和博弈对抗过程,自适应地生成多个对抗场景让本车驾驶算法再训练,通过迭代优化不断提升驾驶算法的鲁棒性,使算法对不同场景具有更好的适应性。本方案的案例应用该设计方法设计了一个换道超车驾驶算法并在Carla中进行了仿真实现,多次迭代优化后的算法能在不同的测试场景下均取得较好的表现。该设计方法对以强化学习为代表的学习型驾驶算法具有普适性,并不局限于超车换道场景,还可以应用到如泊车、十字路口转向和高速路口汇入汇出等各种自动驾驶汽车的行为决策中,设计出具有高鲁棒性的强化学习驾驶算法,使得驾驶算法在场景迁移时具有更好的适应性。

Claims (10)

1.一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,包括以下步骤:
S1、设计对抗智能体控制部分关键场景因素,以构建对抗场景;
S2、利用对抗场景对车辆进行训练,得到优化后的驾驶算法;
S3、将优化后的驾驶算法应用于车辆控制器,以相应控制车辆的行驶状态。
2.根据权利要求1所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述步骤S1具体是通过生成多个非零和博弈对抗智能体,由对抗智能体与本车进行对抗,所述本车和对抗智能体的对抗目标为:
Figure FDA0004023464930000011
其中,μego和μsat分别是本车智能体和场景智能体的的策略函数,
Figure FDA0004023464930000012
是优化目标,Gt为积累回报,St为环境状态随机变量,γ为回报折扣,Rn为环境提供的回报随机变量,与环境、本车智能体、场景智能体以及其他场景元素有关。
3.根据权利要求2所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述本车智能体的策略函数μego的优化目标为优化策略函数得到最大的积累回报;所述场景智能体为了对抗本车,优化目标是优化策略函数最小化该积累回报。
4.根据权利要求3所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述场景车辆的回报函数为
Figure FDA0004023464930000013
其中,
Figure FDA0004023464930000014
为对抗智能体的奖励,/>
Figure FDA0004023464930000015
为本车的奖励,/>
Figure FDA0004023464930000016
是正则项优化目标,用于奖励对抗智能体产生更加符合现实的场景,α是控制场景的对抗程度的对抗调控因子,α越大则对抗项占比越大,智能体对抗行为越强,反之则正则项占比越大,智能体的行为更加理性,生成的场景更符合现实。
5.根据权利要求4所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述步骤S1具体包括以下步骤:
S11、采用actor-critc架构的TD3深度强化学习算法设计对抗智能体,设计状态值si,可选环境配置动作ai,TD3算法包含一个动作网络μ(siμ)和两个策略网络
Figure FDA0004023464930000021
Figure FDA0004023464930000022
以及它们对应的目标网络μ′(siμ′)、/>
Figure FDA0004023464930000023
和/>
Figure FDA0004023464930000024
S12、对抗智能体的训练步骤为:
随机初始化TD3网络θμ
Figure FDA0004023464930000025
和/>
Figure FDA0004023464930000026
并将参数赋给对应的策略网络,即θμ′=θμ′
Figure FDA0004023464930000027
获取场景智能体所需的的环境状态si
设计TD3深度强化学习的神经网络结构μ(siμ),根据状态值si输出可选环境配置动作:
Figure FDA0004023464930000028
其中c为噪声的对称截断阈值,aLow和aHigh为动作的截断阈值;
施加动作ai后得到下一个环境状态si+1,每步的奖励ri′是根据非零和博弈奖励函数
Figure FDA0004023464930000029
获得的;/>
至此得到了单步经验(si,ai,si+1,ri),将本次经验放入经验池D中;
从经验池D中采样N次经验,并计算三个网络的代价函数:
Figure FDA00040234649300000210
Figure FDA00040234649300000211
Figure FDA00040234649300000212
其中yi为目标值,计算方式为:
Figure FDA00040234649300000213
采用梯度下降法更新网络参数:
Figure FDA00040234649300000214
Figure FDA00040234649300000215
Figure FDA00040234649300000216
其中αμ和αQ分别是actor网络和critic网络的学习率;
每隔固定步长d后更新目标网络参数
θμ′=τθμ+(1-τ)θμ′
Figure FDA00040234649300000217
其中τ∈(0,1),为目标网络更新比例;
重复执行上述步骤,直到达到设定的步长或奖励达到设定值后停止训练;
S13、测试本车在生成的对抗场景下的成功率,如果在设定阈值范围内,将生成的对抗智能体构建的对抗场景放入场景库L中,否则抛弃掉该场景;
S14、重复步骤S11~S13,直至生成期望数量Ns的对抗场景。
6.根据权利要求1所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述步骤S2具体是将生成得到的多个对抗场景提供给本车进行训练,在本车每回合训练时采样出一个不同的场景提供给本车进行训练。
7.根据权利要求6所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述步骤S2使用优先成功率方法从场景库中筛选出训练场景,假设共有n个场景,在训练过程中实时统计本车在n个场景中的任务成功率,根据任务成功率从低到高进行排序,记场景Si的排名为rank(Si),则Si被采样到的概率p(i)为
Figure FDA0004023464930000031
其中,δ∈Z为随机扰动,场景i归一化后的采样概率P(i)即为
Figure FDA0004023464930000032
8.根据权利要求7所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述步骤S2具体包括以下过程:
S21、首先训练本车初始第一代强化学习驾驶算法,之后初始化数组T[N]和A[N],用于分别记录场景库L中N个场景的使用次数和本车在场景中的任务成功率;
S22、根据A[N]从低到高对各场景的排序,得到每个Si场景的rank(Si),i=0,1,...,N,并计算采样概率:
Figure FDA0004023464930000033
其中,随机扰动δ∈Z;
S23、根据计算出的概率值采样出场景Si
S24、本车在场景Si中完成一个回合的训练;
S25、更新场景Si的成功率,并更新场景Si的使用次数T[i]=T[i]+1;
S26、重复步骤S22~S25,直到本车在各场景中的成功率达到期望值,至此得到下一代本车的驾驶算法;
S27、重复进行下一轮优化,直到达到期望的优化次数Nopt为止。
9.根据权利要求8所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述步骤S21中训练本车初始第一代强化学习驾驶算法的具体过程为:
1.根据任务场景选择深度强化学习算法,设计状态值si,可选环境配置动作ai和奖励函数Rego
2.选择训练场景,将本车放在该场景中进行训练;
3.获取车辆和环境状态si
4.驾驶算法根据状态值si输出可选环境配置动作ai
5.根据奖励函数Rego计算当前环境配置动作的奖励值ri,执行动作ai后的状态si+1对完成任务越有利,本车强化学习智能体获得的奖励越高;
6.重复执行步骤3~5,直到本车在场景中达到预期成功率或最大训练步长为止。
10.根据权利要求8所述的一种基于对抗强化学习的自动驾驶优化控制方法,其特征在于,所述步骤S25中场景Si的成功率具体为:
Figure FDA0004023464930000041
其中,A[i]为场景Si对应的成功率。
CN202211715787.0A 2022-12-28 2022-12-28 一种基于对抗强化学习的自动驾驶优化控制方法 Pending CN116224996A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211715787.0A CN116224996A (zh) 2022-12-28 2022-12-28 一种基于对抗强化学习的自动驾驶优化控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211715787.0A CN116224996A (zh) 2022-12-28 2022-12-28 一种基于对抗强化学习的自动驾驶优化控制方法

Publications (1)

Publication Number Publication Date
CN116224996A true CN116224996A (zh) 2023-06-06

Family

ID=86586410

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211715787.0A Pending CN116224996A (zh) 2022-12-28 2022-12-28 一种基于对抗强化学习的自动驾驶优化控制方法

Country Status (1)

Country Link
CN (1) CN116224996A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116880218A (zh) * 2023-09-06 2023-10-13 浙江大学 基于驾驶风格误解的鲁棒驾驶策略生成方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116880218A (zh) * 2023-09-06 2023-10-13 浙江大学 基于驾驶风格误解的鲁棒驾驶策略生成方法及系统
CN116880218B (zh) * 2023-09-06 2023-12-19 浙江大学 基于驾驶风格误解的鲁棒驾驶策略生成方法及系统

Similar Documents

Publication Publication Date Title
CN110297494B (zh) 一种基于滚动博弈的自动驾驶车辆换道决策方法及系统
Liang et al. Cirl: Controllable imitative reinforcement learning for vision-based self-driving
CN112216124B (zh) 一种基于深度强化学习的交通信号控制方法
CN111260027B (zh) 一种基于强化学习的智能体自动决策方法
Cardamone et al. Learning drivers for TORCS through imitation using supervised methods
Wang et al. Learning hierarchical behavior and motion planning for autonomous driving
Cardamone et al. Learning to drive in the open racing car simulator using online neuroevolution
CN113581182B (zh) 基于强化学习的自动驾驶车辆换道轨迹规划方法及系统
CN112784485B (zh) 一种基于强化学习的自动驾驶关键场景生成方法
CN112550314B (zh) 适用于无人驾驶的嵌入优化式控制方法及其驾驶控制模块和自动驾驶控制系统
Zhang et al. A systematic solution of human driving behavior modeling and simulation for automated vehicle studies
CN112508164B (zh) 一种基于异步监督学习的端到端自动驾驶模型预训练方法
CN116224996A (zh) 一种基于对抗强化学习的自动驾驶优化控制方法
Sukthankar et al. Evolving an intelligent vehicle for tactical reasoning in traffic
Shi et al. Efficient Lane-changing Behavior Planning via Reinforcement Learning with Imitation Learning Initialization
CN116859731A (zh) 基于强化学习的增强高铁自动驾驶控制系统准时性的方法
CN116720571A (zh) 一种基于n版本编程的深度强化学习软件容错方法
CN111348034A (zh) 基于生成对抗模仿学习的自动泊车方法及系统
Gongsheng et al. Deep deterministic policy gradient algorithm based lateral and longitudinal control for autonomous driving
Almalki et al. Exploration of reinforcement learning to play snake game
Chouiekh et al. Road traffic: deep q-learning agent control traffic lights in the intersection
CN114954498A (zh) 基于模仿学习初始化的强化学习换道行为规划方法及系统
CN114973650A (zh) 车辆匝道入口合流控制方法、车辆、电子设备及存储介质
Wang et al. An End-to-End Deep Reinforcement Learning Model Based on Proximal Policy Optimization Algorithm for Autonomous Driving of Off-Road Vehicle
Gu et al. A game theory approach to attack-defense strategy for perception of connected vehicles

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