基于开关式深度神经网络的拟人化自动驾驶决策算法

第32卷第6期
中国机械工程
V o l .32㊀N o .62021年3月
C H I N A M E C HA N I C A LE N G I N E E R I N G
p p
.689G696基于开关式深度神经网络的拟人化自动驾驶决策算法
王玉龙1,2
㊀裴㊀锋1㊀刘文如1㊀闫春香1㊀周卫林1㊀李㊀智1
1.广州汽车集团股份有限公司汽车工程研究院,广州,510641
2.湖南大学汽车车身先进设计制造国家重点实验室,长沙,410082
摘要:基于深度神经网络的拟人化自动驾驶为复杂环境下的高级自动驾驶提供了新的思路,但网络的
封闭性会导致上层驾驶指令很难进入网络,为此,设计了一种开关式深度神经网络,该网络由卷积神经网络层和长短期记忆网络层组成,在两个子网络间嵌入了具有开关性质的特征选择层,并通过不同的驾驶指令选择激活不同的特征分支,从而完成了相应的驾驶任务.实车测试结果表明,开关式深度神经网络不会显著增加模型的推理时间,同时该网络实现了根据输入的不同驾驶指令完成车辆在路口的左转㊁右转㊁直行和绕障行为
.
关键词:开关式深度神经网络;拟人化;自动驾驶;决策算法中图分类号:U 463.3
D O I :10.3969/j .i s s n .1004 132X.2021.06.008开放科学(资源服务)标识码(O S I D )
:H u m a n Gi m i t a t i v eA u t o n o m o u sD r i v i n g D e c i s i o n Gm a k i n g A l g
马艺文
o r i t h mB a s e do n S w i t c h e dD e e p N
e u r a lN e t w o r k s WA N G Y u l o n g 1,
2㊀P E IF e n g 1㊀L I U W e n r u 1㊀Y A N C h u n x i a n g 1㊀Z
HO U W e i l i n 1㊀L I Z h i 1
1.G A CA u t o m o t i v eR e s e a r c h &D e v e l o p m e n tC e n t e r ,G u a n g
z h o u ,5106412.S t a t eK e y L a b o r a t o r y o fA d v a n c e dD e s i g na n d M a n u f a c t u r i n g f o rV e h i c l eB o d y
,H u n a nU n i v e r s i t y ,C h a n g
s h a ,410082A b s t r a c t :H u m a n Gi m i t a t i v ea u t o n o m o u sd r i v i n g b a s e do n
d e e p n
e u r a ln e t w o r k s p r o v i d e dan e w i d e a
f o r a d v a n c e d a u t o n o m o u s d r i v i n
g u n d e r c o m p l e x e n v i r o n m e n t s .H o w e v e r ,i tw a s d i f f i c u l t f o r u p
Gp e rd r i v i n g i n s t r u c t i o n st oe n t e rt h en e t w o r k d u et ot h ec l o s e n e s so ft h en e t w o r k .T h e r e f o r e ,a s w i t c h e dd e e p n e u r a l n e t w o r kw a sd e s i g n e d ,w h i c hc o n s i s t e do f c o n v o l u t i o n a l n e u r a l n e t w o r kl a y
e r s a n d l o n g s h o r t Gt e r m m e m o r y n e t w o r k l a y e r s .A
f e a t u r e s e l e c t i o nn e t w o r k l a y
赖如宜
e rw a s e m b e d d e d i n t h e t w o s u b Gn e t w o r k s ,a n d t h e nd i
f f e r e n t f e a t u r e b r a n c h e sw e r e a c t i v a t e db y d i f f e r e n t d r i v i n
g i n s t r u c t i o n s t o c o m p l e t e t
h e c o r r e s p o n d
i n g d r i v i n g t a s k s .V e h i c l e t e s t r e s u l t s s h o wt h a t t h e s w i t c h e dd e e p n e u r a l n e t w o r kd o e sn o t g r e a t l y i n c r e a s et h e i n f e r e n c et i m ea n dt h ed i f f e r e n td r i v i n g t
a s k sw i l l
b ea
c c o m Gp l i s h e da c c o r
d i n g t o t h
e d i
f f e r e n t d r i v i n
g i n s t r u c t i o n s ,s u c
h a s t h e l e f t Gt u r n ,r紧箍咒口诀
i g h t Gt u r n ,s t r a i g h t Gg
o a t t h e i n t e r s e c t i o na n do b s t a c l e Gb y p
a s s i n t h e r o a d s .K e y w o r d s :s w i t c h e dd e e p n e u r a l n e t w o r k ;h u m a n Gi m i t a t i v e ;a u t o n o m o u sd r i v i n g ;d e c i s i o n Gm a k Gi n g a l g
o r i t h m 收稿日期:20191127基金项目:湖南大学汽车车身先进设计制造国家重点实验室开
放基金(31825011
)0㊀引言
传统规则式自动驾驶系统将自动驾驶过程划分为感知㊁决策㊁规划以及控制执行等子任务
[1G2
],
其优势是算法结构清晰且可靠性高,但由于汽车在行驶过程中需要面临非常复杂的行驶环境,仅依靠人为编写规则很难满足高级别自动驾驶对决策和规划的开发需求.近年来,深度神经网络算法性能的大
幅提升给自动驾驶带来了全新的开发
思路,深度神经网络算法已逐渐应用于自动驾驶感知㊁决策以及规划等任务中.
深度神经网络对自动驾驶感知能力的提升已
经得到了业界普遍认可[3G4]
,但在决策及规划任务
中的应用仍处于研究阶段,其中一个重要的分支是研究拟人化自动驾驶决策.拟人化自动驾驶决策是通过建立深度神经网络模型来学习人类的驾驶行为,直接由传感器信息映射到转向㊁加速以及制动等车辆控制信号,不需要人为编写大量的行驶规则,只需要提供足够多的训练数据,系统就能自动学习到不同场景下的驾驶能力.B O J A R S K I
等[5G6]
基于卷积神经网络(c o n v o l u t i o n a ln e u r a l
986
厦门大学门n e t w o r k s,C N N)建立了从单帧图像映射到车辆转向盘转角的端到端拟人化自动驾驶决策模型,其测试结果表明,该模型在多种测试工况下均可获得良好的车道保持效果;C HOWD HU R I等[7]在跟车㊁换道㊁转弯以及停车等不同场景下设计了不同的C N N模型,通过不同C N N模型的切换使得自动驾驶系统对多场景下的转向盘转角和速度均能较好的预测;C O D E V I L L A等[8]将C N N层与不同的全连接网络(f u l l y c o n n e c t e dn e t w o r k s, F C N)分支结合,完成了导航功能的开发.上述C N N模型并未考虑自动驾驶过程中涉及的时序问题,而长短期记忆(l o n g s h o r tGt e r m m e m o r y, L S T M)网络模型擅长解决时序问题.C H I等[9]采用C N N+L S T M的网络模型,通过输入图片序列对转向盘转角进行了预测,该模型相比文献[5]设计的模型更加稳定和有效;E R A Q I等[10]设计了卷积式长短期记忆(c o n v o l u t i o n a l l o n g s h o r tGt e r m m e m o r y,CGL S T M)网络模型,其基本结构与C N N+L S T M模型相似,但相比于一般的C N N模型,所设计模型的转向盘转角均方根误差减小了35%;Y A N G等[11]构建了基于C N N+L S T M的多模态多任务模型,数据集测试效果显示该模型可以同时准确地预测转向盘转角和速度.此外,许多研究为了提高模型的预测能力,在网络训练过程中加入了辅助任务.X U等[12]通过加入道路分割的辅助任务来对驾驶员的驾驶意图进行预测;C H E N等[13]通过C N N模型识别出自动驾驶过程中的关键环境参数,并将此参数作为网络输入来进行自动驾驶决策算法的设计.
目前拟人化自动驾驶决策研究主要侧重于单向控制或简单任务的开发(如进行单独的横向控制或纵向控
制),对复杂多任务下的算法研究比较缺乏.若采用单一网络对自动驾驶决策轨迹进行预测,则无法满足驾驶指令的输入(如在同一个路口,导航指令会要求车辆进行左转㊁右转或者直行),而且在某些场景下会导致训练标签之间发生相互矛盾(如车辆前方有障碍物时,可以选择跟车或者绕过障碍物).为解决上述问题,文献[8,14G15]采用分段网络结构将自动驾驶网络分成感知网络㊁决策网络以及控制网络,其中决策网络可根据驾驶指令分为不同的子网络,但是此网络结构复杂,存在大量的计算冗余,且无法进行端到端的训练.为此,本文设计了一种开关式深度神经网络,该网络由C N N层和L S T M层组成,在两个子网络间嵌入了具有开关性质的特征选择层,然后通过不同的驾驶指令选择激活不同的特征分支,
基于一个所设计的网络即可完成车道保持㊁绕障行驶以及导航转向等多项复杂任务.
1㊀开关式深度神经网络
1.1㊀网络结构设计
开关式深度神经网络结构如图1所示,网络输入为前向多帧图像以及转向盘转角和速度的历史轨迹,输出为预测的转向盘转角和车辆行驶速度.网络整体结构包括C N N层㊁特征选择网络(f e a t u r e s e l e c t i o nn e t w o r k s,F S N)层㊁L S T M层和F C N层.其中C N N层的主要作用是提取输入图像的特征, F S N层根据不同的驾驶指令对C N N层输出的特征进行选取,L S T M层用以获得不同图像帧之间的
时空关系,F C N层则根据L S T M层输出的结果进行决策,并输出车辆行驶的控制参数
.
图1㊀开关式深度神经网络结构
F i g.1㊀S w i t c h e dd e e p n e u r a l n e t w o r k s s t r u c t u r e
本文中输入的图像帧数为5,即包括当前帧在内的前5帧图像,经过裁剪和缩放的图像输入大小为240p i x e lˑ75p i x e l.C N N层一共包括5层,采用3D卷积核,不同C N N层的超参数向量分别为(3,5,5,3,16)㊁(2,5,5,16,32)㊁(2,5,5,32,32)㊁(1,3,3,32,48)㊁(1,3,3,48,6),其中每个超参数向量中的前3个超参数分别为图像序列长㊁宽和高的卷积核大小,第4个超参数为输入图像的通道数目,第5个是输出图像的通道数目,最终C N N层输出的特征维度为(5,8,3,64),即每帧图像均由64个10p i x e lˑ4p i x e l的图像块表示,将图像块进行展平可获得维度为(5,2560)的特征向量.
F S N层将C N N层输出的特征切分为不同的特征分支,不同的驾驶指令通过选择不同的特征分支,使得深度神经网络对不同的驾驶指令做出不同的响应.本文所选择的驾驶指令包括两类:
096
中国机械工程第32卷第6期2021年3月下半月
导航指令和绕障指令.导航指令由手机地图发出,包括左转㊁右转以及直行;绕障指令是当车辆前方遇到静止障碍物时由系统发出绕障请求,此时自动驾驶车辆根据可行驶区域进行绕障行驶.因此最终可获得4个指令:左转㊁右转㊁直行以及绕障行驶.4个指令平分C N N层输出的特征向
量,即每个指令对应的特征向量维度为(5,640),同时将每帧图像对应的前5帧转向盘转角和速度作为网络的输入,并与每个指令对应的特征向量进行拼接后输入到L S T M层.
L S T M层共包括两层,节点数量均为256,在L S T M层后连接有两个F C N分支,其中一个分支为转向盘转角预测,该分支包括3层F C N层,输出层为当前帧的转向盘转角预测值,激活函数为反正切函数;另一个分支为速度预测,与转向盘转角预测分支具有相同的网络结构,输出层为当前帧的速度预测值,激活函数为s i g m o i d函数.1.2㊀网络损失函数设计
神经网络是通过梯度下降法寻从输入到输出的最佳函数表达式,因此网络的损失函数对网络的预测精度有非常重要的影响,本文基于开关式深度神经网络结构设计了独特的损失函数,可表示为
Y=f(I,w,C i)(1)式中,f( )表示网络输入输出的映射函数;I为图像输入;w为网络中涉及的优化参数;C i为不同的驾驶指令输入,i=1,2,3,4分别表示左转㊁右转㊁直行和绕障行驶指令;Y为每帧图像对应网络的输出预测值.
网络优化就是寻最优的参数w使得ð(y-Y)2值最小,其中y为每帧图像对应车辆行驶控制的实际值.同时对训练参数进行正则化处理,使得模型不会过拟合到训练数据中的随机噪声,本文采用L2正则化方法,最终的网络损失函数可表示为
(w s,w i)=a r g m i n
w s,w iɪR
{αð(θ-f(I,w s,w i,C i))2+βð(v-f(I,w s,w i,C i))2+λ(w2s+w2i)}(2)式中,w s为不同驾驶指令共享的网络参数;w i(i=1,2,3,4)为不同驾驶指令下独立的网络参数;θ㊁v分别为转向盘转角和速度的实际值;α㊁β分别为转向盘转角和速度偏差的权重系数;λ为正则化权重系数,取经验值为1ˑ10-5.
每一个驾驶指令都对应一个损失函数,不同的驾驶指令共享参数w s,但具有不同的w i.为避免量纲不同所带来的误差,将转向盘转角和速度分别进行归一化处理,其中转向盘转角除以其最大值归一化到[-1,1],速度除以其最大值归一化到[0,1],固定α值为1,优化β值最终确定为0.1.2㊀训练数据处理
2.1㊀数据采集和处理
拟人化自动驾驶决策算法是基于人类驾驶数据进行模型训练的,因此数据对自动驾驶能力具有很大的
影响.通过车辆前端安装的摄像头采集车辆行驶环境数据,摄像头视角为60ʎ,采集频率为10H z,图像尺寸为1920p i x e lˑ1208p i x e l,采
集图像样本不少于50万帧,同时利用车载传感器采集驾驶行为数据,包括车辆转向盘转角㊁车辆速度以及车辆横摆角速度等,采集频率为100H z,采集的场景包括不同时间㊁道路㊁天气㊁光线以及车流等.
开关式深度神经网络可以接受不同的驾驶指令来完成相应的功能,因此在不同驾驶指令下对应的训练数据是不同的,根据设定的4个驾驶指令(左转㊁右转㊁直行和绕障行驶)对数据进行切分标注,分为路口左转数据㊁路口右转数据㊁路口直行数据㊁车道内直行数据以及绕障数据.无论左转㊁右转还是绕障行驶都应该在相应功能开始前和结束后具有车道保持的功能,因此不同指令下的训练数据均包含车道内直行数据.如左转指令下的训练数据包括路口左转数据以及车道内直行数据,车辆在路口左转时,系统提前切换到左转指令,在到达路口的这段距离内车辆仍然保持直行,在车辆到达路口后进行左转,然后在左转完成后继续沿车道行驶,直至系统切换到直行指令;而绕障指令下的训练数据包括绕障数据和车道内直行数据,当车辆距障碍物一定距离时车辆可以保持在车道内行驶,当系统发出绕障指令时车辆进行绕障行驶,绕障完成后车辆沿着新的车道继续行驶,直至系统切换到直行指令.不同指令下的数据构成如表1所示.
表1㊀不同指令下的数据构成
T a b.1㊀D a t a s t r u c t u r e u n d e r d i f f e r e n t i n s t r u c t i o n s
指令类型数据构成
数量
(帧)场景外部条件直行车道内直行+路口直行20万主干道无限制左转车道内直行+路口左转20万路口白天交通通畅右转车道内直行+路口右转20万路口白天交通通畅绕障行驶车道内直行+绕障行驶10万绕障场景白天交通通畅2.2㊀数据增强
在自动驾驶行驶过程中,所遇到的场景非常复杂,为了提高模型的泛化能力和鲁棒性,需要针对采集的数据进行数据增强.但与目标识别所不同的是,车辆转向盘转角和速度与图像参数相关
196
基于开关式深度神经网络的拟人化自动驾驶决策算法  王玉龙㊀裴㊀锋㊀刘文如等
性比较大,不能随意对图像进行旋转㊁缩放㊁裁剪以及翻转等操作.本文主要对图像进行光线调整㊁阴影处理㊁平行移动以及加入高斯噪声等处理,同时为了增加路口转向的数据,将左右转向的图像进行翻转而获得相反方向的数据,自动驾驶
数据增强后的效果如图2所示
.
(a)原始图像
(b)亮度增强
(c)亮度减弱㊀
(d)增加阴影
(e)左上平移㊀
(f)右下平移
(g)高斯噪声㊀
(h)左右翻转
图2㊀自动驾驶数据增强效果
F i g.2㊀A u t o n o m o u s d r i v i n g d a t a e n h a n c e m e n t (1)光线调整.将原始图像(图2a)从R
G B 空间转换到湍流动能
H S V空间,随机调节代表亮度变化的V值,调节范围为-40%~40%,然后从H S V 空间转换到R G B空间,增强和减弱亮度的效果分别如图2b和图2c所示.图像对应的转向盘转角和速度的标签值不变化.
(2)阴影处理.随机从原始图像上下边缘选取两个点将图像分为两部分,随机挑选一部分加入图像阴影,阴影透明度为50%,增加阴影后的效果如图2d所示.图像对应的转向盘转角和速度的标签值不变化.
(3)图像平动.将原始图像随机进行上下左右平移,移出部分用黑像素点填充,其中上下平移范围为[-4p i x e l,4p i x e l],左右平移范围为[-12p i x e l,12p i x e l],向上和向右为正,左上平移和右下平移的效果分别如图2e和图2f所示.
上下平移时图像对应的转向盘转角的标签值不变化,每上移一个像素,速度标签值增大1%,左右平移时图像对应的速度的标签值不变化,每右移一个像素,转向盘转角标签值增大0.5%.
(4)高斯噪声.给原始图像加入高斯白噪声,平均值为0,偏差为0.1d B,加入高斯白噪声的效果如图2g所示.图像对应的转向盘转角和速度的标签值不变化.
(5)图像翻转.将原始图像进行左右翻转,翻转后的效果如图2h所示.图像对应的速度标签值不变化,转向盘转角标签值变为对应的负值.3㊀网络训练
3.1㊀模型训练超参数设置
将数据集分为左转㊁右转㊁直行以及绕障行驶4个子数据集,每个子数据集均包含训练集㊁验证集和测试集,比例分别为80%㊁10%和10%.训练总步数为20万,在每一步的训练中分别对4个分支都进行一次迭代,共享的网络参数在4个分支的迭代过程中均会得到更新,而每个分支独有的网络参数只会在该分支的迭代过程中得到更新.
训练采用A d a m优化算法,该算法可以自适应地调整训练过程中的参数.同时为加快模型的收敛速度,采用阶梯状的学习率,其表达式如下:
D r=l r d r C s t e p/D s t e p(3)式中,D r为当前学习率;l r为基础学习率,本文设置为10-3;d r为学习率的衰减率,本文设置为0.9;C s t e p为当前训练步数;D s t e p为达到衰减率的步数,本文设置为1万.
同样为了加快训练过程中模型的收敛速度,将速度㊁转向盘转角以及图像数据进行归一化处理,即
v-=v v m a x㊀㊀㊀v-ɪ[0,1]
θ-=θθm a xθ-ɪ[-1,1]
I-=I127.5-1I-ɪ[-1,1]
ü
þ
ý
ï
ï
ï
ï
ï
ï
(4)
其中,v-㊁θ-㊁I-分别为速度v㊁转向盘转角θ和图像数据I归一化后的值.设置速度的最大值v m a x=30k m/h,转向盘转角最大值θm a x=300ʎ.3.2㊀模型预测结果分析
采用均方根误差(r o o tm e a ns q u a r e de r r o r, R M S E)和决定系数R2对不同模型的预测性能进行评估[16].R M S E和R2的计算表达式分别如下: V R M S E=㊀1nðn i=1(y i-Y i)2(5)
296
中国机械工程第32卷第6期2021年3月下半月
R 2=1-
ðn
i =1(
y i
-Y i )2
ðn
i =1
(
y i
-y
-)2
(6
)式中,n 为测试样本总量;y -
为车辆行驶控制实际值的平均值.
R M S E 是预测值与实际值之间的平均偏差,
R M S E 值越小表明模型的预测值和实际值的偏差越小,模型的预测能力越强.如果在相同数据集下则可以利用R M S E 来衡量不同模型的性能,但本文训练所涉及的数据集以及模型的输出均有所不同,因此采用R 2对模型进行评估.R 2可以反映模型对样本的拟合程度,R 2值越大表明模型的预测精度越高,一般回归模型的R 2应在0.7以上才会取得较高的可信度.
为了平滑模型的输出,采用如下滤波算法对
结果进行滤波处理,其表达式如下[
]:S (n )=γ(|Y (t )-Y (t -1)|)2
3s i g
n (Y (t )-Y (t -1))+Y (t -1
)(7
)其中,Y (t -1)为上一时刻t -1时转向盘转角或速度的预测值;Y (t )为当前时刻t 时转向盘转角或速度的预测值;S (t )为当前时刻t 时转向盘转角或速度的滤波值;γ为滤波系数,
本文设定转向盘转角的滤波系数为0.1,速度的滤波系数为0.2.图3所示为不同导航指令下模型对速度和转
向盘转角的离线预测,预测时间长度为100s ,左转指令下车辆首先经过一个急促的左转弯,然后进行一段车道保持,之后又经过一次左转弯.右转指令下车辆连续经过三次右转弯,中间段为车道保持过程.从图3中可以看出,在左转和右转指令下,转向盘转角的预测值与实际值非常吻合,
R M S E 值分别为7.2ʎ和7.9ʎ,R 2值分别为0.98和
0.91,无论是在左急转弯还是在右缓转弯处,模型均可作出正确的转角预测,且在没有路口的位置,
模型的预测值也与实际值吻合,车辆具有保持在车道内行驶的能力.速度的预测值与实际值之间略有偏差,在左转和右转指令下,R M S E 值分别为2.5k m /h 和1.1k m /h ,R 2值分别为0.87和0.88,
hpoa
这是因为在转弯时,即使是相同的路口,不同时刻采集到的速度偏差较大,但总体来说,模型对速度变化趋势的预测结果还是较为准确的,模型可以根据转弯半径的大小进行速度调整.图4所示为直行指令和绕障指令下模型对速度和转向盘转角的离线预测,预测时间长度为100s
,直行指令下车辆根据前方车辆的运动状况进行了8次的起步和停止,绕障指令下车辆根据
前方静止车辆进行了13次绕障.从图4
中可以
(a
)
路口左转指令(b
)路口右转指令图3㊀不同导航指令下转向盘转角和速度预测F i g .3㊀P r e d i c t i o no f s t e e r i n g a n g l e a n d s p
e e du n d e r d i
f f e r e n t n a v i g
a t i o n c o m m a n d s 看出,无论是直行还是绕障指令下,模型对转向盘转角和速度的预测结果均与实际值比较吻合.其中转向盘转角的R M S E 值分别为2.5ʎ和8.2ʎ,R 2值分别为0.71和0.97,虽然直行指令下转向盘转角的R M S E 值比绕障指令下转向盘转角的R M S E
值小,但从图4中可以看出避障指令下的预测结果与实际值更加吻合,因此R 2比R M S E 更能体现模型的预测能力.在直行和绕障指令下,速度预测的R M S E 值分别为2.2k m /h 和1.6k m /h ,R 2值分别为0.84和0.92,
在直行过程中模型可以根据前方车辆状态进行起步和停止,但由于直行采集过程中最高速度有所不同,因此预测的最高速度与实际值之间会有偏差.同样在绕障过程中模型根据前方静止车辆位置进行减速,然后在距离车辆较近的位置进行换道避障.3.3㊀不同特征分支重叠度对模型精度的影响
本文对C N N 层的输出特征进行切分以获得
396 基于开关式深度神经网络的拟人化自动驾驶决策算法
王玉龙㊀裴㊀锋㊀刘文如等

本文发布于:2024-09-24 08:31:00,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/332346.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:驾驶   指令   模型   进行   数据
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议