刘明春 付皓 黄菊花 史鸿枫
(南昌大学,南昌330031)
主题词:自动驾驶车辆 驾驶行为分析 车辆控制 神经网络
自动驾驶汽车的安全性和乘坐舒适性与其弯道转向控制密切相关。熟练驾驶员的操纵行为是保证车辆安全性和舒适性的重要因素,也是自动驾驶车辆“拟人化”控制的重要学习对象。因此,基于“人-车”系统数据的分析和学习是评价和提高自动驾驶车辆性能的重要途径。
人-车系统主要分为驾驶员操纵行为与车辆动态响应。驾驶员操纵行为包括对踏板与转向盘的操作[1],通过这些操作数据可以分析驾驶员的行为特性[2-4]。另外,驾驶员还存在一些不良习惯[5],如东张西望等[6]。车辆动态响应主要指车辆动力学特性,包括燃油经济性[7]、操纵稳定性[8-9]、安全性[10]、乘坐舒适性[11]等。
车辆控制经历了从经典控制理论到智能控制的过渡。经典控制理论所采用的传递函数法是较早的车辆控制算法,郭孔辉基于传递函数提出了预瞄-跟随理论[12],实现了车辆控制[13],该算法简单易行,但控制效果有待提高。PID 算法常应用于路径跟随控制[14],通过计算系统实际值与期望值的误差进行反馈校正。模型预测控制算法基于现代控制理论将人-车-路闭环系统表示为状态空间[15],以已知模型、当前状态量和未来控制量预测未来输出。上述方法都需要事先得到预期轨迹。在智能控制理论中被广泛应用于车辆控制的算法有模糊控制算法[16]和神经网络算法[17],前者需要得到预期轨迹,而后者需要大量数据来提高其有效性。
本文基于对熟练驾驶员操纵数据的分析提出一种针对弯道的转向控制方法。首先,在PreScan+Simulink环境中建立车-路模型[18],采集多位熟练驾驶员在虚拟场景下的转向盘角度、轨迹、横摆角速度与质心侧偏角。然后,通过对比驾驶员数据和期望数据,对驾驶员数据进行分析和评价,筛选出训练样本,以道路曲率、车速、车辆横摆角速度为输入,以转向盘转角为输出,建立基于BP 神经网络的弯道转向控制器。最后,对该控制器进行仿真和实车测试,以验证其有效性。
本文的模拟驾驶平台软硬件构架如图1所示:在PreScan 软件中建立场景模型与传感器模型;罗技G29操纵装置提供转向盘和油门踏板、制动踏板、离合器踏板,驾驶员操纵该装置实现车辆的转向、驱动和制动控制,其数据通过电信号传输至执行机构;在MATLAB/Simulink 中建立车辆动力学模型作为控制对象,Simulink 中的罗技G29 信号接收模块将电信号转化为Simulink信号输入;由PC端获取PreScan软件输出的3D场景作为驾驶员视角,同时获取MATLAB/Simulink反馈的信息进行数据监控和采集。控制器整体框架如图2所示。
图1 模拟驾驶平台软硬件构架
图2 控制器设计框架
本文采用3自由度车辆模型作为控制对象,模型的输入为转向盘转角和速度,输出为车辆动力学参数。3自由度车辆模型如图3所示。
图3 3自由度车辆动力学模型
根据牛顿第二定律,建立如下方程:
式中,m为车辆的整备质量;̈分别为车辆在x轴方向的速度和加速度̈分别为车辆在y轴方向的速度和加速度;Iz为车辆绕z轴的转动惯量;a、b分别为车辆质心到前、后轴的距离;φ为车辆横摆角;δf为前轮转角;Flf、Flr分别为地面对前、后轮胎的纵向作用力;Fcf、Fcr分别为地面对前、后轮胎的侧向作用力。
根据线性的轮胎理论模型[19],Flf、Flr、Fcf、Fcr的表达式分别为:
式中,Cxf、Cxr分别为前、后轮胎的纵向刚度;Cyf、Cyr分别为前、后轮胎的侧偏刚度;sf、sr分别为前、后轮胎在地面上的滑移率;αf、αr分别为前、后轮胎的侧偏角。
基于前轮转角较小情况,并考虑车身坐标系与惯性坐标系之间的转换关系,整理得到3自由度车辆动力学系统方程为:
2.3.1 场景设计与数据采集
在设计的模拟驾驶平台中,PreScan软件提供场景、道路和车辆信息,罗技G29装置模拟真实驾驶员的操纵行为,MATLAB/Simulink软件采集并存储驾驶员的操纵数据和车辆状态数据。
为了提高模型的有效性,本文设定了11 个弯道场景,其中10个作为训练场景,1个作为测试场景。同时,按照城市道路规划规范[20],对这些弯道场景进行速度限制。训练场景设计参数如表1所示。
表1 训练场景设计参数
每个训练场景有2 条道路,分别为左转向与右转向,除方向外其他设定完全相同。规定道路曲率圆的圆心在驾驶员左侧时曲率为正,反之为负。
邀请8 位熟悉操纵平台特性的熟练驾驶员在10 个场景共计20 条道路进行一次有效驾驶(顺利从起点行驶至终点),保证每位驾驶员起始位置和终点位置相同,且驾驶过程中速度保持不变。采集驾驶员数据、车辆数据与道路数据,包括转向盘转角、车速、横摆角速度、质心侧偏角以及道路曲率,采样周期为20 ms。
2.3.2 数据处理与分析
为了保证车辆弯道转向过程中的安全性、稳定性和舒适性,选取驾驶员车道保持能力、驾驶员转向平稳性以及车辆稳定性作为控制效果的评价指标。
2.3.2.1 驾驶员车道保持能力
本文用车辆质心与中心线的横向距离来描述驾驶员的车道保持能力:假定期望轨迹为车道中心线,将实际轨迹与期望轨迹进行相似性比较,将该指标进行量化处理,本文采用基于欧式距离的相似度算法对期望轨迹和实际轨迹进行比较[17]。具体方法如图4所示,在每个场景的道路边界均匀选取n个点(P1,…,Pi-1,Pi,Pi+1,…,Pn),每相邻2 个点的距离为1 m,用来确定车辆在道路上的位置。在大地坐标系内,驾驶轨迹和期望轨迹在Pi处对应的轨迹上的点分别为Di和Qi,Di和Qi对应的瞬时转向盘转角为δdriver和δexp。根据2 条轨迹在每个选取点对应的位置,计算2个点间的欧氏距离:
图4 车辆位置计算
式中,||Di-Qi||为Di和Qi的二范数欧氏距离。
则2条轨迹的累计距离偏差、平均距离偏差可分别表示为:
道路曲率为1/35 m-1的弯道常见于城市环岛,选用该曲率的训练场景进行说明。在该训练场景的左转向道路中,期望轨迹和8 位驾驶员的实际驾驶轨迹如图5所示,其中前、后各有60 m的速度控制直道和30 m的方向回正直道,直道不参与计算过程。
图5 驾驶轨迹与期望轨迹
计算各驾驶员的驾驶轨迹与期望轨迹的平均距离偏差,该指标反映了驾驶员驾驶过程中车辆与车道中心线的偏离程度,其结果如表2所示。
表2 轨迹平均距离偏差 m
2.3.2.2 驾驶员转向平稳性
驾驶员的转向平稳性为驾驶员操作转向盘的稳定性,表现为驾驶员控制转向盘的振荡程度。为了将该指标量化,引入变异系数cv[21]:
式中,σ、分别为所测量的转向盘转角的标准差和均值。
变异系数体现了转向盘转角的离散化程度,变异系数越大,离散化程度越大。采集到的8位驾驶员的转向盘转角如图6所示。
图6 驾驶员转向盘转角
在计算变异系数时,需要剔除前、后2 段直线道路的数据,计算得到8位驾驶员的转向盘转角变异系数如表3所示。
表3 转向盘转角变异系数
2.3.2.3 车辆稳定性
车辆的稳定性主要体现在车辆的横摆角速度和质心侧偏角上。一方面可直接通过其数值评价车辆的稳定性,另一方面,可将二者的实际值与期望值进行对比分析来评价车辆的稳定性。
基于二自由度车辆模型计算出期望横摆角速度,其表达式为[22]:
式中,ωdes=Gωzss·δ为稳态转向下的横摆角速度;ωd=0.85μg/ẋ为横摆角速度上限;Gωzss为横摆角速度的稳态增益;δ为转向盘转角;μ为道路附着系数;g为重力加速度。
同样可得期望质心侧偏角,其表达式为[22]:
式中,βdes=Gβzss·δ为稳态转向下的质心侧偏角;βd=arctan(0.02μg)为质心侧偏角的上限;Gβzss为期望质心侧偏角增益。
根据式(11)和式(12)计算该场景下的期望横摆角速度和期望质心侧偏角,得到横摆角速度、质心侧偏角的期望值与8位驾驶员的测量值如图7、图8所示。
图7 横摆角速度期望值与实际值
图8 质心侧偏角期望值与实际值
拟合优度作为一种用于非线性回归方程拟合程度判定的指标,常用于曲线拟合。本文引入度量拟合优度的统计量可决系数R2[23],将期望值作为拟合后的曲线,进行拟合优度分析。可决系数的计算公式为:
式中,yij为编号为j的驾驶员数据的实测值;为期望值;为编号为j的驾驶员数据的平均值;n为每个驾驶员数据的总数量。
可决系数体现了车辆的稳定性指标与期望值的拟合程度,R2越接近1,表明拟合度越高。
分别计算8 位驾驶员的驾驶员数据与期望数据的可决系数,横摆角速度和质心侧偏角的拟合优度分析结果分别如表4、表5所示。
表4 横摆角速度拟合优度
表5 质心侧偏角拟合优度
2.3.3 评价模型
为了对驾驶员数据进行评价,建立如表6所示的驾驶员转向行为评价体系。
表6 驾驶员转向行为评价体系
选用层次分析法计算指标权重,参考国内外驾驶行为评价研究及成果,综合运用各项研究中的专家经验和数据,基于各项评价指标的相对重要性,以主观判断法对各项指标进行评判[24],得到一级指标和车辆稳定性的判断矩阵分别如表7、表8所示。
表7 一级指标判断矩阵
表8 车辆的稳定性判断矩阵
计算各判断矩阵的行指标乘积:
计算各行的归一化权重作为判断矩阵各指标权重:
最后得到权重分配结果如图9所示。
图9 权重分配结果
采用模糊评价法进行打分[25]:设置评价集为V={优秀,良好,中等,合格,差},其分值为v={100,90,80,70,60}。选取18 名从事自动驾驶行业的人员,并参考各项指标的平均值对各项指标进行评价。根据评价结果及其权重分配计算得到驾驶员转向行为评分结果如表9所示。
表9 驾驶员转向行为评分 分
用相同的评价系统评价8 位驾驶员的所有驾驶行为,得到160组驾驶数据的评分如表10所示。
表10 驾驶员转向行为评分
为提升神经网络的训练速度和控制器的有效性,剔除得分75 分以下的驾驶员数据,其余数据作为训练样本。
本文设计一种基于BP神经网络的自动驾驶弯道转向控制器,控制流程如图10所示。
图10 横向控制流程
设计BP 神经网络为3 层结构,输入节点分别为车速、道路曲率、横摆角速度,输出节点为转向盘转角。采用试凑法确定隐藏层单元数[26],最后确定神经网络构造为3-8-1,如图11所示。
图11 神经网络基本结构
神经网络隐藏层与输出层的激活函数采用sigmoid函数,正向传播过程为:
神经网络的反向传播使用莱文伯格-马夸特(Lev⁃enberg-Marquard,LM)算法来修正模型的权值和阈值[27]:
式中,w(k)和b(k)分别为为第k次迭代的权值和阈值所组成的向量;J为雅克比矩阵;I为单位矩阵;μ为学习率;e为输出误差矩阵。
测试道路选用江西省上饶市的一处高速匝道入口,在PreScan软件中建立1∶1的道路模型,测试道路如图12所示。
图12 测试道路
设定车辆行驶速度为40 km/h,且驾驶员参考车道中心线驾驶车辆,仿真测试结果如图13所示。
结合图13a中数据和2.3.2.1节中计算公式,计算得到驾驶员、控制器控制下轨迹和期望轨迹的平均距离偏差分别为0.832 1 m、0.418 7 m。由图13b 可知,控制器能够模拟驾驶员的转向行为。结合图13c和图13d中数据和2.3.2.3 节中计算公式,分别计算驾驶员数据、自动驾驶控制结果、期望值之间可决系数,结果如表11所示。综合以上仿真结果分析,可以得出该控制器能够有效模拟熟练驾驶员的转向行为,且能够保证自动驾驶车辆的安全性和稳定性。
图13 仿真测试结果
表11 仿真测试车辆响应拟合优度
测试平台为某自动驾驶车辆,如图14所示,该车配备了1个前视摄像头和6个毫米波雷达,传感器的检测距离如图15所示。本文利用前视摄像头检测车道线并通过内置算法计算车道线的曲率。
图14 测试车辆
图15 车载传感器配置
测试车辆的整车通讯架构如图16所示。以MicroAutoBox硬件作为控制器,车辆传感器向控制器提供交通信息。主机车辆的速度和加速度通过CAN总线提供。控制器基于所提出的控制算法计算期望加速度,并将其作用于测试车。主计算机中可直观地显示主机车辆的控制信息和运动状态。
图16 实车验证方案
本次测试选用园区内的一条有车道线的弯道作为测试场景,速度设定为20 km/h。车辆状态可通过车身CAN总线获取,前车运动状态通过毫米波雷达获取,道路信息通过前视摄像头获取。测试结果如图17所示。
图17 实车验证结果
结合图17b数据和2.3.2.1节计算公式,得到驾驶员和控制器控制下轨迹的平均距离偏差为0.127 2 m。图17c表明,控制器可模拟驾驶员的转向行为。结合图17d和图17e数据和2.3.2.3节计算公式,分别计算驾驶员数据、自动驾驶控制结果、期望值间的可决系数,结果如表12所示。综合分析可得,弯道转向控制器在实车应用中可模拟熟练驾驶员转向行为,且能保证安全性和稳定性。
表12 实车验证车辆响应拟合优度
本文提出了一种基于驾驶员操纵数据分析和学习的自动驾驶车辆弯道转向控制器,用于模拟熟练驾驶员在弯道上的驾驶行为。基于3自由度车辆模型搭建人-车-路模拟驾驶平台,采集多位熟练驾驶员的操纵数据,并进行离散分析和相似分析,建立模糊综合评价系统对驾驶员转向行为进行评分,筛选出训练样本,基于LMBP神经网络建立弯道转向控制器,控制器以车速、道路曲率、横摆角速度为输入,以转向盘转角为输出。仿真测试和实车验证结果表明,该控制器能够模拟熟练驾驶员的弯道驾驶特性,并能保证行驶安全性和稳定性。