精选文章||神经网络在无人驾驶车辆运动控制中的应用综述
精选文章||神经网络在无人驾驶车辆运动控制中的应用综述
gh_72df7adaeec6
工程科学学报网络宣传与推广
〢详细信息:
神经网络在无人驾驶车辆运动控制中的应用综述
张守武, 王恒, 陈鹏, 张笑语, 李擎
工程科学学报, 2022, 44(2): 235
http://doi.org/ 10.13374/j.issn2095-9389.2021.04.23.001
稿件已录用首发(点击下方网站直达相应页面):
官网 ; 知网
〢摘 要:
无人驾驶车辆自身具有强烈的非线性、信号时延和参数不确定性,对它的控制还受到道路附着系数的变化、侧向风等外界因素影响。因此传统控制方法往往难以对其稳定和精确地控制。神经网络所具有的学习能力、自适应能力和近似非线性映射的能力,为解决车辆模型参数的不确定性、外界的扰动以及车辆自适应控制问题提供了有效的途径。针对上述几个方面,对近几年国内外学者将神经网络应用到无人驾驶车辆运动控制中所取得的成果与进展进行了归纳分类,分别介绍了应用情况并对优缺点进行评价。最后总结了神经网络在无人驾驶车辆运动控制中存在的主要问题,并展望了可能的发展方向。
无人驾驶车辆(以下简称无人车)为人们的日常出行带来便捷,也被广泛应用到军事领域和危险场景中 [ 1 ] 。它可以极大地减少驾驶员的失误,也可以为无法驾驶车辆的残疾人士提供方便 [ 2 - 3 ] 。传统无人车运动控制器的设计依赖精确的车辆模型,实际应用效果与仿真结果之间存在一定差距 [ 4 - 5 ] 。在这种情况下,神经网络为模型未知的复杂非线性系统或动态时变的控制对象,特别是无人车的运动控制,提供了强大的技术支持。神经网络可以从大量数据中挖掘特征,通过调整内部节点连接的权重和阈值,对网络输出造成不同程度的影响,以达到系统控制的目的 [ 6 - 7 ] 。在无人车运动控制中,常用的神经网络模型有:
(1)BP(Back propagation)神经网络:BP神经网络本质上是一个非线性优化问题, 它在已知的约束条件下,寻找一组参数组合,使该组合确定的目标函数达到最小。而无人车运动控制可以转化为多约束条件下的求最优解问题,因而BP神经网络常被用于设计无人车控制器 [ 8 ] 。又因为BP神经网络具有自适应学习的能力,有较强的鲁棒性和容错性,因此适用于优化其他控制算法的参数,使其具有自适应性,提高算法精确性 [ 9 ] 。
(2)RBF(Radial basis function,径向基)神经网络:RBF神经网络有很强的非线性拟合能力,而且学习规则简单,学习过程收敛速度快,便于计算机实现。常被用于逼近车辆的不确定性参数、外部干扰等未知动态局部 [ 10 ] 。又因为RBF神经网络具有唯一最佳逼近的特性,无局部极小问题,常被用于优化其他控制算法的参数 [ 11 ] 。
(3) RNN(Recurrent neural network)神经网络:RNN神经网络可以记忆以往的信息并应用于当前输出的计算,最广泛使用的有长短时记忆网络等。RNN神经网络在处理时序相关问题时有较好性能,因此常被用于车辆的状态估计 [ 12 ] 。RNN神经网络由于增加了隐层及输出层节点的反馈,增强了网络学习的精确性和容错性,因此能较好地估计车辆的状态 [ 13 ] 。
神经网络可以根据车辆的状态偏差,直接输出控制量,实现无人车的运动控制;可以逼近车辆的不确定性参数、外部干扰等未知动态局部,提高无人车运动控制的精确性和鲁棒性;可以作为车辆状态观测器,估计车辆状态参数;可以优化其他控制算法的参数,使其具有自适应性,提高算法精确性。下面从这四个方面,分别介绍神经网络在无人车运动控制中的具体应用。
无人车的运动控制,根本上是建立车辆状态偏差与消除此偏差所需控制量之间的映射。神经网络作为车辆控制器,可以根据车辆的状态偏差直接计算出控制量,实现无人车的运动控制。卡梅隆大学在1989年首次实现了神经网络对无人车的运动控制,并使用进化算法对其优化。铰链式无人车不同于乘用无人车,具有独特的转向机构。利用神经网络可以建立专门针对铰链式无人车的控制器。驾驶员对车辆的控制,类似车辆控制器,都是让车辆尽可能地跟随目标状态。驾驶员模型是利用数学形式模拟驾驶员对车辆的控制行为,建立车辆状态偏差和驾驶员对车辆控制之间的映射。将神经网络用于建立车辆驾驶员模型,可以比较驾驶员操控行为与车辆自主巡航系统的不同。为避免采集大量驾驶员的操作数据作为神经网络的训练样本,可以通过最优化目标函数来确定神经网络的权重和阈值。
1.1 建立神经网络控制器
1989年Pomerleau设计出了基于神经网络的无人车驱动系统ALVINN(Autonomous land vehicle in a neural network) [ 14 ] ,用来驱动CMU Navlab无人车。ALVINN系统使用的是一个三层前馈神经网络。输入层为30×32点的视频图像,隐含层包含4个神经元。输出层包含30个神经元,为当前转向角度的线性表示。最中间的输出单元表示“直线前进”状态,而位于两侧的单元分别表示急剧地左转弯和右转弯。训练结束后,该神经网络控制器可根据道路信息,实现无人驾驶。最高速度可达88 km·h −1 ,车辆保持在距离车道中心平均6.9 cm的范围内。然而,ALVINN系统需要频繁的再训练,以适应不断变化的外界环境。而且所用的误差反向传播法,需要通过梯度下降法寻找权空间的优化方向,容易陷入局部极小。文献[ 15 ]探讨了采用进化算法确定神经网络的权值和阈值的方法。相比之下,进化算法是全局搜索式算法,可以有效地减少局部极小值的影响。
铰接式无人车转向方式不同于常规乘用车辆,其控制器的设计更加复杂 [ 16 ] 。文献[ 17 ]利用神经网络完成了铰接式无人车的运动控制。首先建立车辆简化模型,然后利用模型参考自适应控制原理,设计了针对铰接式无人车的神经网络控制器,该神经网络为3层网络:由4个神经元构成的输入层、10个神经元构成的单隐层和线性输出层。神经网络的输入为道路曲率、横向加速度、横向速度和横向位移,输出量为铰接角。仿真显示,该控制器在变曲率路段中,收敛速度快,稳态特性好,能够准确地控制铰接式无人车跟踪期望路径。
1.2 建立驾驶员模型
驾驶员对汽车的操控行为,与车辆控制器一样,都是使车辆的运动状态尽可能跟随期望的状态。驾驶员模型是用数学的形式模拟驾驶员操纵汽车的行为。利用驾驶员模型,可以建立驾驶员−车辆−路况的闭环系统,更加全面地评价车辆操控的稳定性。经过人们对驾驶员行为的长期研究,文献[ 18 ]提出了一个人−车−路闭环的鲁棒控制系统,动态补偿了驾驶员在不同转向频率下的反应。然而这种基于反馈补偿的驾驶员模型,当纵向速度过快时往往难以保证足够的相位角。为此,郭孔辉院士提出了预瞄−跟随理论 [ 19 ] ,根据驾驶员前方道路的信息,计算控制输入、补偿时间和超前相位。文献[ 20 ]应用数字最优预见控制理论,有效补偿了驾驶员的操纵时延和自身干扰。但由于驾驶员模型的时变性和非线性,传统控制方法往往难以建立精确的数学模型 [ 21 ] 。
车辆自适应巡航系统能够根据前车的行为,自动调整本车的速度,以保持安全的行车距离。丰田汽车研究中心将神经网络应用到自适应巡航系统的设计中,用以模拟熟练驾驶员的控制行为 [ 22 ] 。所采用神经网络的输入分别为道路信息、汽车横向速度、横向位移,输出为经过驾驶员延时环节的方向盘转角。隐含层和输出层采用 sigmoid式激活函数。所采用神经网络的结构如 图1 所示,输入分别为道路信息、汽车横向速度、横向位移,输出为经过驾驶员延时环节的方向盘转角 δ 。
图 1 三层前馈神经网络驾驶员控制器原理图
为了简化神经网络驾驶员模型的拓扑结构,文献[ 23 ]提出了一种基于预瞄优化的神经网络驾驶员模型,以前方道路信息为输入,类似滚动优化的建模方法,采用最优化目标函数来确定神经网络。因此它不需要真实驾驶员驾车的试验数据,而且结构简单,只用4个神经元的单层神经网络就建立了驾驶员模型。
模型参数的不确定性和未知的外部干扰是无人车实际控制中经常需要解决的问题 [ 24 ] 。它们是高度非线性的,且随着车辆行驶环境而变化 [ 25 - 26 ] 。利用神经网络可以逼近了外部干扰和建模误差,提高了滑模算法的控制精度。轮胎参数的不确定性是无人车系统参数不确定性的重要原因,利用径向基神经网络可以逼近车辆转向刚度的不确定性,再通过高阶滑模进一步减少车辆控制的抖振。
2.1 逼近无人车模型中不确定参数和外部干扰
滑模控制鲁棒性强、响应快,但容易产生高频抖振,造成车辆失稳和机械磨损。利用神经网络逼近系统外部干扰和建模误差可以减少滑模控制产生的抖振,提高控制的精确性。文献[ 27 ]提出了基于径向基神经网络的滑模控制方法。车辆控制模型为:
(1)
其中, x 为车辆状态, u 为车辆前轮转角, D 为外部干扰和建模误差。
根据滑模控制原理 [ 28 ] ,可求得:
(2)
其中, t 为时间, s ( t ) 为滑模面, M 为转移矩阵, k 、 ζ 为大于零的常数。
由于在实际工况中,外部干扰和建模误差 D 往往是不可知的,因此采取径向基神经网络对其逼近。神经网络以横向偏差 e 和横向偏差的变化率e · 为输入,以 D 为输出。当获得 D 的精确值后,就可用式(2)求得精确的前轮转角。仿真表明:所提方法能够减少外界干扰和建模误差对系统的影响,降低前轮转角的抖振,提高控制的鲁棒性。
2.2 逼近无人车模型中不确定的轮胎转向刚度
当车辆急剧转弯时,轮胎转向刚度表现出强烈的不确定性,使得控制律难以实现 [ 29 - 31 ] 。文献[ 32 ]采用的三层径向基神经网络逼近轮胎的不确定转向刚度,以横向偏差及其导数为输入,轮胎的不确定转向刚度为输出。传统的一阶滑模控制在其控制中容易出现高频抖振 [ 33 - 34 ] 。高阶滑模控制可以有效地抑制抖振现象,同时在有限时间内消除扰动的影响。但实现高阶滑模的精确控制需要预先建立精确的数学模型。文献[ 35 ]考虑侧风和偏航力矩对车辆横向运动的影响,用径向基函数神经网络逼近车辆的不确定性参数和未知的外部干扰,用高阶滑模控制来保持车辆的横向控制和横摆稳定性。其中滑模面是横向误差 e 的函数,用作径向基神经网络控制器和高阶滑模控制器的输入。针对系统存在的不确定参数和未知外部干扰,利用径向基神经网络计算出系统的等效控制 δ eq 。 利用高阶滑模控制器计算出的等效控制 δ rob ,两项叠加生成最优前轮转角 δ 。
为了提高车辆的安全性,车辆控制引入了车身电子稳定系统 [ 36 ] 和直接横摆力矩控制系统 [ 37 ] 。试图通过对内外轮胎的差动制动或驱动力分配来稳定车辆。但是要实现以上控制,需要预先知道车辆的侧滑角或侧倾角。但只有特殊的设备能够直接测量它们,且价格昂贵,不适合普通汽车使用。因此,为实现无人车稳定的运动控制,需要实时估计车辆的侧滑角或侧倾角。
神经网络可以建立传感器测量得到的车辆动力学变量与侧滑角之间的映射,从而实现侧滑角的估计。但是如何利用有限数量的车载传感器,为神经网络表征车辆侧滑角提供足够的信息是当前研究的热点。利用横摆角速度和横向加速度估计车辆侧滑角,可以减少外部干扰对估计精确性的影响。利用车速、纵向加速度、横向加速度、路面附着系数和前轮转角,同时考虑以往时刻的车辆状态对当前估计值的影响,可以更加准确地估计车辆侧滑角。为了提高车辆侧倾角估计的实时性和准确性,可以结合神经网络和卡尔曼滤波准确估计出车辆侧倾角,但卡尔曼滤波是一种基于模型的迭代方法。利用H∞滤波器可以减少神经网络的估计误差,提高估计的精确性并减少了对模型的依赖。
3.1 对车辆侧滑角的估计
文献[ 38 ]利用卡尔曼滤波对侧滑角估计。卡尔曼滤波基于车辆数学模型,但车辆轮胎的特性取决于道路黏附条件、外界温度、轮胎磨损等条件,往往难以建立准确车辆数学模型。文献[ 39 ]提出的自适应观测器可以在道路黏附系数、轮胎转角刚度变化时提供侧偏角估计,但传感器的布局复杂、计算量大。
神经网络因为可以对非线性系统进行建模,常被用于建立传感器得到的车辆动力学变量与侧滑角之间的映射。文献[ 40 ]把车辆侧滑角看作横摆角速度和横向加速度的函数。首先建立驾驶员模型,然后对主要参数在各自变化范围内取值,获得用于训练神经网络的样本。当神经网络训练结束时,径向基神经网络可以建立出三者之间的非线性关系,实时地估计出汽车的侧滑角。
无人车除了高度非线性外,还具有严重的时滞性 [ 41 ] 。因此对侧滑角估计时应考虑前一段时间内车辆的状态对当前估计值的影响。文献[ 42 ]建立了基于长短记忆网络的车辆侧滑角估计模型。神经网络有5个输入:车速、纵向加速度、横向加速度、路面附着系数、前轮转角;输出为侧滑角和横摆角速度。在预测层,将上一时刻长短记忆预测模块的状态信息作为下一时刻预测模块的输入,实现了车辆状态在时间上的连续。
无人车在实际行驶中工作条件和轮胎附着力会发生大量的变化,而车身只有有限数量的传感器可以用做神经网络的输入。文献[ 43 ]研究了当纵向速度和路面附着系数变化时,对神经网络侧滑角估计的影响。为了进一步提高网络性能,神经网络输入不仅包括车辆当前的状态,而且包含车辆在以前时刻的状态和输出。尽管所建立的神经网络在数值分析中表现出了令人满意的结果,但为了精确估计车辆的侧滑角,还需要深入研究车辆侧倾角对侧滑角估计的影响。因为当车辆侧倾时,横向加速度会受到重力加速度的影响,从而降低估计的质量。
3.2 对车辆侧倾角的估计
侧倾稳定控制(Roll stability control,RSC)系统可以防止车辆发生侧倾事故 [ 44 ] 。侧倾角是RSC必须考虑的参数。它虽然可通过双天线GPS直接测量,但该设备价格昂贵。因此,有必要研究在车辆运动控制中侧倾角的实时估计问题。
文献[ 45 ]提出了一种利用加速度计和悬架偏转传感器来估计侧倾角的方法,但这种方法缺乏精确性且悬架偏转传感器价格昂贵。文献[ 46 ]提出了一种基于横向加速度计和陀螺仪的侧倾角估计器,但未考虑外部噪声和模型噪声的影响。文献[ 47 ]使用低成本的GPS和车载传感器来估计车辆的侧倾角,但GPS容易受到城市和森林等驾驶环境的影响。文献[ 48 ]利用卡尔曼滤波来估计车辆的侧倾角,但需要建立精确的车辆模型。
为了解决以上问题,文献[ 49 ]提出了一种将神经网络和卡尔曼滤波相结合的车辆侧倾角估计器。神经网络的4个输入分别为纵向加速度、横向加速度、横摆角和横摆角速度,输出为侧倾角,隐含层包含15个神经元。训练样本从仿真软件的车辆模型中获得的。误差信号定义为期望侧倾角与神经网络估计侧倾角之间的差值。神经网络根据误差信号调整网络参数、突触权值。神经网络通过从惯性测量单元(IMU)测量出来的信号来估计侧倾角,再利用卡尔曼滤波滤除估计值中的噪声。利用仿真软件得到的数据,对该神经网络进行了不同速度和不同摩擦系数下的转弯和变道训练。最后,将所提出的估计方法与利用悬架偏转传感器获得的侧倾角进行了比较,结果表明所提出的估计方法的有效性。结构如 图2 所示,神经网络根据误差信号调整网络参数、突触权值。神经网络通过从惯性测量单元(IMU)测量出来的信号来估计侧倾角 Φ NN ,再利用卡尔曼滤波滤除估计值中的噪声得到最终估计值 Φ NN-Kalman 。
图 2 基于神经网络和卡尔曼滤波的汽车侧倾角估计原理图
文献[ 50 ]开发了一种基于H∞滤波与神经网络相结合的车辆侧倾角估计器。估计过程包括两个部分:第一部分利用神经网络估计车辆的侧倾角。第二部分为一个H∞滤波器,该滤波器将神经网络的估计误差视为传感器噪声,从而滤除掉估计误差。不仅降低了系统的不确定性,而且提高了估计的精度。
神经网络与PID控制相结合,可以解决PID控制器参数的实时整定问题。利用强化学习优化PID控制算法,可使其参数在线整定且不需要训练样本。利用驾驶员单点预瞄模型与神经网络的结合,可以实现车辆横向运动的自适应控制。利用蚁群优化算法对神经网络初始化参数进行离线优化,可以有效地解决由于初始参数随机设置所引发的控制超调等问题。利用2型模糊神经网络与PID控制结合,可以减少以往基于梯度下降法的神经网络学习速度慢和计算时间长的问题。模型预测控制(Model predictive control, MPC)因在多约束系统中的独特优势,逐渐被应用到无人车的运动控制中。利用神经网络,可以动态调整MPC的预瞄时间、补偿MPC的线性化误差,从而提高MPC对无人车运动的控制精度。
4.1 优化PID控制算法参数
文献[ 51 ]针对无人驾驶铰接式运输车的运动控制问题,提出了基于强化学习的自适应PID控制算法。强化学习不需要训练样本,可以根据外界环境反馈和评价结果来确定下一次执行动作。使用强化学习方法对PID参数进行在线实时整定,使控制器可以自适应不同的路况。在建立铰接车模型的基础上,根据模型参考自适应控制器的原理,设计了基于强化学习的自适应PID路径跟踪控制器。参考模型规定了偏差收敛的趋势,以获得理想的收敛效果。回报函数计算当前参数效果的评价,通过累计历史回报计算综合回报指标。神经网络以横向位置偏差、航向角偏差、曲率偏差为输入,以转角控制量为输出,对历史多次参数调整结果的优劣评价,再根据评价调整新的增益参数,并传递给PID控制器。仿真表明,基于强化学习的PID控制器能够较好地减小超调和震荡,实现参考路径的精确跟踪。
驾驶员单点预瞄模型可以通过车辆前方的道路信息和汽车的行驶状况,根据汽车行驶轨迹与预瞄轨迹误差最小的原则,决定最优的横向加速度。文献[ 52 ]通过驾驶员单点预瞄模型与神经网络的结合,实现了车辆横向运动PID自适应控制。该算法首先采用驾驶员单点预瞄模型计算车辆的最优横向加速度,然后利用神经网络的自学习能力,根据最优加速度的偏差在线计算PID控制参数。在不同速度和车道曲率条件下的仿真表明,该控制算法能够控制车辆沿预先给定的轨迹行驶,具有良好的轨迹跟踪和车道保持能力,对速度和车道曲率的变化具有较强的自适应性和鲁棒性。
文献[ 53 ]利用神经网络对传统PID车辆纵向控制器进行了改进;利用径向基神经网络学习速率快、可并行处理的特点,设计了径向基神经网络与PID相结合的纵向运动控制器,实现车辆控制参数的在线自适应调整,解决了车辆纵向运动控制的振荡和失稳等问题;针对模型初始化参数的随机性,引入蚁群优化算法对径向基神经网络和PID的初始化参数进行离线优化,有效地解决了由于控制模型初始参数随机设置所引发的控制超调、调参耗时长等问题。
对于神经网络的训练,目前广泛使用梯度下降法,因此需要计算偏导数或灵敏度函数。该方法存在学习速度慢和计算时间长等缺点,且难以用解析的方式证明学习过程的收敛性和稳定性。为了解决这些问题,文献[ 54 ]提出了2型模糊神经网络和基于滑模控制理论的学习算法。基于滑模控制的学习算法不仅可以使整个系统具有更好的鲁棒性,而且比传统的学习技术具有更快的收敛速度。采用比例−积分−微分控制器来控制车辆的纵向速度。在横向运动控制中,比例导数控制器与2型模糊神经网络并行工作,有效解决了系统中各种不确定关系和外部干扰。
4.2 优化模型预测控制参数
常规MPC控制器的预瞄时间为0.4~1.2 s之间的一个恒定值。但无人车运动控制中的预瞄时间应当根据车速、路面情况、道路几何形状动态调整,以避免车辆过多地偏离目标路径。文献[ 55 ]选用车速、横向偏差为神经网络控制器的输入,预瞄步长为神经网络的输出,利用仿真软件得到不同工况下的训练样本。经过测试,采用预瞄时间动态调整的控制方法,车辆在转弯处的跟踪精度虽然略有降低,但是在直线处跟踪效果较好且车辆行驶更加稳定,路径跟踪的总体精度得到提高。
MPC对车辆模型的线性化,可以减少控制过程中的计算量,提高控制的实时性,但同时也降低了控制精度,特别是在道路曲率复杂时。因此在保证控制实时性的前提下,如何动态补偿线性化误差值得深入研究。文献[ 56 ]利用径向基神经网络对MPC建模误差进行了动态补偿。神经网络以纵向速度、横向速度、航偏角、航偏角速度、 X 坐标、 Y 坐标为输入,前轮补偿转角为输出。仿真表明,在路径曲率发生剧烈变化时,所设计控制器可以快速补偿误差,实现准确快速的路径跟踪。
本文概述了近年来神经网络在无人车运动控制中的应用状况,并做出如下的总结和展望:
(1)对于神经网络在无人车运动控制中的适用性和鲁棒性的验证,目前多使用软件仿真和典型路径测试,缺乏其在恶劣环境下的应用研究。恶劣环境下的无人车运动具有更加强烈的时变性、不确定性和非线性,同时涉及多运动变量的耦合,如何设计强鲁棒性、低运算成本的控制器有待研究。
(2)当前无人车运动控制的主要控制量为车辆前轮转角,若增加控制变量如横摆力矩,可以提高车辆横向控制的响应速度和稳定裕度。但设计多执行器协调下的无人车运动控制器时,需要对冗余执行器系统、故障诊断与容错控制等关键技术进行深入研究。
(3)为实现无人车运动的精确控制,还需进一步考虑路面附着系数、道路坡度、侧向风等因素的影响。获取这些参数需要多个异构传感器和状态观测器,因此无人车的多传感器融合,特别是稳定性的证明,是一大技术难点。
(4)在实际应用中,神经网络的结构设计、参数选择、初值设定,目前多通过经验设定,缺乏科学的流程。稳定性和收敛性的证明缺少系统化工具,学习样本的选取等往往根据所要解决的实际问题具体分析,限制了它更加广泛的应用。
《工程科学学报》精选文章系列
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26