APP下载

基于改进粒子群优化算法的多目标自适应巡航控制

2021-06-16杜进辅崔亚辉

汽车工程学报 2021年3期
关键词:前车舒适性经济性

毛 锦,阳 磊,刘 凯,杜进辅,崔亚辉

(西安理工大学 机械与精密仪器工程学院,西安 710048)

汽车自适应巡航控制(ACC)系统是一种先进的驾驶辅助系统,在定速巡航的基础上,发展了跟车和换道等多种功能,目前广泛应用于汽车中。在汽车行驶过程中,该系统不仅能缓解驾驶员精神负担,而且能保证在行车安全的前提下提高燃油经济性和舒适性。

目前,ACC常采用分层控制,上层控制算法的研究趋向于多元化和精细化,以便更好地契合生活需求。PERSSON等[1]提出一种适合城市道路工况的启停ACC。LI Shengbo等[2]与LIN Yuchen等[3]在考虑跟车安全性的同时综合协调燃油经济性与舒适性,提出了一种有限时域动态规划模型预测控制的多目标ACC。FANCHER等[4]根据车头时距将车辆运行工况划分为巡航工况、跟随工况。ZHAO等[5]针对时变多目标控制问题,提出了一种实时更新权重的模型预测控制,以提升ACC的燃油经济性和舒适性。章军辉等[6]基于模型预测控制理论,综合协调多目标,将行驶工况划分为5种模式,提升了ACC的适应性和友好性,并研究了基于模型预测控制的仿驾驶员行为ACC[7]等。模型预测控制(MPC)是近年来被广泛讨论的一种反馈控制策略,由于其采用加权的方法解决相互矛盾的控制目标[8],已成为ACC中主要的控制算法。目前,大多数研究主要通过改进模型预测控制来提高多目标ACC算法的驾乘舒适性和燃油经济性。

近年来,随着智能算法的发展,粒子群优化(PSO)算法相较于其他优化算法,具有结构简单,运算快,参数易调整,优化结果明显等优点,因此被广泛运用[9]。顾宏杰等[10]通过对粒子赋予自适应感知的能力,提出了一种求解约束优化问题的改进粒子群优化算法。SUSUKI等[11]利用粒子群优化算法优化MPC中目标函数的权重,以达到权重的自适应取值。HUANG等[12]引用了一种改进粒子群算法求解带有控制变量约束的目标函数。董娜等[13]引入了一种带有混沌初始化的PSO算法来解决同时带有输入约束和状态约束的控制优化问题。梅钦等[14]将惩罚函数和PSO算法相结合,借助罚函数将约束优化问题转换成无约束问题。PERZE等[15]采用动态惯性权重来避免过早收敛,同时提出带自适应惩罚因子的惩罚函数解决约束问题等。因此,改进PSO算法具有求解带约束的多目标优化问题的优势。

本文基于模型预测控制理论,设计综合考虑车辆安全性、燃油经济性、舒适性等互相冲突的控制目标,在滚动优化环节,提出一种改进PSO算法优化带有多个约束的线性离散目标函数问题,并结合CarSim联合仿真进行验证。

1 多目标ACC控制算法

多目标ACC控制算法是目前研究较多的一种ACC上层控制算法,通过车间纵向运动学模型,基于模型预测控制理论设计综合协调安全性、舒适性和燃油经济性的目标函数。

1.1 预测模型

在车辆跟驰运动过程中,ACC车辆在与目标车辆之间保持一个安全间距的前提下,能够平稳快速地跟上目标车辆。如图1所示,给出了车间纵向运动学模型。

图 1 ACC系统纵向运动学示意图

图1中,Δd为实际车间距与期望车间距之差,期望车间距为车头时距,d0为最小安全间距,相对距离为相对距离,(d+d0)为实际相对距离,vf、af和vl、al分别为ACC车辆和目标车辆的速度、加速度。

根据ACC车辆与目标车辆纵向运动学关系[16],令为状态向量。其中,相对速度为ACC车辆速度的加速度变化率,ACC车辆纵向运动学状态方程为:

其中,Ts为采样周期;τ为下层控制器的时滞常数。

由于安全性、跟车性、舒适性、燃油经济性是评价ACC车辆的重要指标,本文令作为优化的性能指标向量,即:

其中,系数矩阵C的表达式为:

考虑汽车安全性、燃油经济性、自身及交通法律法规的限制,将相对距离、本车速度、加速度、加速度变化率和控制变量限制在一定范围之内。并且针对MPC滚动优化过程中在硬约束条件下无解的情况,采用文献[6]中的方法,区别对待需拓宽的约束范围,对约束进行松弛化处理:

1.2 滚动优化

滚动优化是模型预测控制的一大特点,在无限的时域内向前进行有限时域的优化。

为了使车辆行驶过程中的安全性、跟车性、舒适性、燃油经济性等控制目标达到期望响应,综上目标函数:

式中:YP、Yr、UN和ε分别为性能指标向量、参考轨迹和控制变量在时域P内的矩阵;Q、R和ρ为权重矩 阵,满 足为松弛因子向量。

2 改进粒子群优化算法

PSO算法是KENNEDY和EBERHART[17]于1995年提出的一种群智能算法,把鸟类个体看作随机的粒子,通过局部和全局最优来引导粒子飞向最优解。

2.1 标准粒子群优化算法

2.1.1 初始化随机粒子群(i=1, 2, …,NPSO)

2.1.2 个体极值与全局极值

个体极值为第i个粒子找到的迄今为止最优位置

全局极值为个体极值中找到一个全局极值,并与历史极值比较,选出最佳的作为当前的极值:

2.1.3 速度和位置迭代公式

式中:w称为惯性因子;c1和c2称为学习因子;r1和r2表示[0,1]上的随机数。

2.1.4 达到终止条件(最大迭代次数M或相邻两代的偏差)

2.2 改进粒子群优化算法

2.2.1 适应度函数

由于加速度与松弛因子为未知控制变量,将式(4)去掉与控制变量无关项作为适应度函数,即:

式中:H和f为实数矩阵;x为包含U和ε的列向量。

2.2.2 约束评判函数

式中:fj(xi)为第j条约束下第i粒子群的违反值;F(xi)为评判第i粒子群的约束评判函数;n代表约束的条数。

2.2.3 位置迭代

通过基本速度和位置迭代公式产生下一代nexti,并与原代xi比较约束评判函数值F(xi),约束评判函数值为0的进行下一步迭代,若都不为0,则定义取代值并且判断约束评判函数值小的进行下一代迭代计算。

2.2.4 取代值

当约束违反函数值不为0时,说明其超出约束,定义取代值代替原代xi与子代nexti的值(原代作为备用群体)。

式中:a与b即约束条件ax≤b时分别对应的值。

2.3 算法流程

步骤1:在约束范围内初始化随机粒子群,群体规模NPSO,每个粒子速度Vi和位置Xi。

步骤2:计算每个粒子的适应度值S(x)。

步骤3:对每个微粒,将其适应值与个体极值pbest比较,若适应值优,则替代原pbest;将其适应值与全局极值gbest比较,若适应值优,则替代原gbest。

步骤5:更新粒子速度和位置产生下一代nexti。

步骤6:分别计算原代xi与子代nexti的约束评判函数值,若F(xi)与F(nexti)均为0,则无条件继续产生子代;若F(xi)与F(nexti)有一方不为0,则选取为0的粒子群体产生子代;若均不为0,则定义取代值代替原代xi与子代nexti的值,且判断约束评判函数值F(xi)与F(nexti),值小的子代进行下一步迭代计算。

步骤7:达到终止条件(最大迭代次数M或相邻两代的偏差)。

3 仿真验证

仿真采用Microsoft Windows 10 64bit 下的Matlab R2018a版本,仿真参数见表1(部分参数可调)。分别对本文提出的ACC上层控制算法(rPSO_ACC)与未采用PSO算法的ACC上层控制算法(原ACC)、基于罚函数粒子群算法的MPC(PPSO_ACC)以及引入一个PSO工具箱到本文MPC中(PSOt_ACC)进行如下3个场景的仿真试验。分别针对舒适性和燃油经济性对其进行对比,舒适性采用加速度变化率的均值评判[12],燃油经济性油耗量的计算采用CAPPIELLO等[18]提出的瞬时油耗模型EMIT模型,计算过程中不考虑道路、车多样性等因素。从两车相对距离、本车速度、本车加速度、本车加速度变化率等4个方面对几种方法进行数值仿真。

表1 rPSO_ACC仿真参数

3.1 前车加减速工况(工况1)

此工况中,假设ACC车辆与目标车辆初始速度相同,均为30 m/s,相对距离为50 m,在前4 s内前车以1 m/s2的加速度加速行驶,在20~24 s时以-1 m/s2的减速度减速行驶,结果如图2所示。

图2 前车加减速工况对比

前车加减速工况下,如图2a所示,所有算法的ACC车辆均未与前车发生碰撞,且rPSO_MPC与PSOt_MPC在0~20 s前车加速行驶时,相对距离最大值比另外两种算法小,在20 s后前车减速行驶时,相对距离最小值比另外两种算法大,提升了前车加速时的跟踪性和前车减速时的安全性。由图2b可知,rPSO_MPC与PSOt_MPC的本车速度变化平缓,跟踪性能较好。当前车在0 s开始加速,rPSO_MPC与PSOt_MPC从2.5 s开始加速,而其他两种算法在4 s时加速,降低了反应时间。由图2c和d可知,rPSO_MPC相较于其他3种算法加速度与加速度变化率极大值与极小值均较小,rPSO_MPC的加速度变化率均未超过1.5 m/s3,且其值的变化更加平稳,提升了算法的舒适性和燃油经济性。

3.2 动态换道切入工况(工况2)

动态换道切入工况充分考虑当前车加速驶离,相邻车道车辆换道插入的情况。ACC车辆与目标车辆初始速度均为20 m/s,相对距离为30 m,在第5 s时本车道前车以1 m/s2的加速度加速行驶,在第10 s时位于相邻车道的前车以25 m/s的速度切入本道,并保持匀速前行,切入后相对距离为15 m。仿真结果如图3所示。

图3 动态换道切入工况对比

由图3可知,4种算法均能有效跟踪前车。如图3a和b所示,在前车加速后第10 s旁车道车辆换道成为前车,相对距离突变为15 m。由图3b可知,在5~10 s原MPC与PPSO_MPC还在反应阶段,前车加速时,本车减速,导致了图3a中第10 s时相对间距过大,易造成换道频发,增加了事故的发生率。相对于PSOt_MPC和rPSO_MPC反应阶段较短,相对距离在合适范围,从而降低了换道工况的发生,且在发生后也能平稳地跟上前车。如图3c和d所示,rPSO_MPC相对于其他3种算法加速度变化平缓,加速度变化率的极值均低于其他算法,提升了舒适性和燃油经济性。

3.3 前车急减速急加速工况(工况3)

假设ACC车辆与目标车辆初始相对距离为50 m,速度相同均为30 m/s,前车前3 s以-3 m/s2的减速度急减速,到第10 s以2 m/s2的加速度加速4 s。仿真结果如图4所示。

图4 前车急加速急减速工况对比

在紧急情况下,图4中4种算法均未与前车发生碰撞,均能有效跟踪前车速度,有较好的安全性。图4b中PSOt_MPC、PPSO_MPC和rPSO_MPC三种算法在0~3 s前车减速时间内,降低了反应的幅值和时间,其速度幅值在32 m/s左右,但原算法在34 m/s以上,且整个急加减速过程rPSO_MPC的速度变化相较于其他算法更加平缓。如图4c和d所示,rPSO_MPC的加速度、加速度变化率波动比其他3种小,变化更平稳,增加了算法的舒适性和燃油经济性。

由3个工况仿真数据,通过EMIT模型计算得到各个工况的总油耗,以及通过计算得到的加速度变换率的均值见表2。由表可知,在3个工况下,rPSO_MPC的总油耗和加速度变化率平均值均比其他算法低,相比原MPC算法在总油耗上提升了23%以上,在加速度变化率平均值上提升了44%以上。综上,rPSO_MPC相比其他3种算法,提高了一定的燃油经济性和舒适性。

表2 各工况油耗与加速度变化率均值

3.4 前车循环工况

为了验证算法的有效性,本文利用Matlab /Simulink和CarSim进行联合仿真。在CarSim中搭建车辆模型及环境信息,在Simulink中搭建下位控制器、制动力控制器和节气门开度控制器。下位控制器采用反馈PID控制,油门制动切换策略和前车循环工况(ECE+EUDC)分别如图5和图6所示。

如图7所示,在整个循环工况中,实际相对距离始终保持在大于0的范围,尤其是前车减速至停车时两车有大于2 m的相对距离,显示了算法在循环工况下能与前车保持期望安全间距,具有较高的行车安全性。

图5 联合仿真平台搭建

图6 循环工况

图7 距离对比

如图8所示,前车在循环工况下,本车车速能够有效跟上前车车速,且两车相对车速最大值不超过15 km/h,保证了车辆在循环工况下的跟车性能。

图 8 速度对比

4 结论

为了提高ACC系统的适应能力以及驾乘人员接受度,设计了综合考虑行车安全性、舒适性、燃油经济性及车辆自身限制等作为变量的目标函数及约束条件,基于模型预测控制理论将多目标ACC控制问题转化为带多约束的二次规划问题,在模型预测控制的滚动优化环节提出一种改进PSO算法,求解带多个约束的二次规划问题。数值仿真结果表明,在保证跟车安全性的前提下,本文提出的基于rPSO_MPC算法具有较低的总油耗和加速度变化率均值,说明该方法可有效提高燃油经济性和行车舒适性,使ACC系统更加可靠、稳定地应用于行车过程。最后通过Matlab/Simulink和CarSim联合仿真,验证了该算法的有效性。

猜你喜欢

前车舒适性经济性
羽绒服面料防钻绒性与相关舒适性研究
改良医用防护服的穿着舒适性与防护性能分析
高层建筑结构设计经济性探讨与分析
基于经济性和热平衡的主动进气格栅策略开发(续2)
舱外航天服主动热控与人体舒适性实验研究
医用一次性防护服热湿舒适性主动式改善方法研究
含风电的电力系统调度的经济性分析
含风电的电力系统调度的经济性分析
美国制定出2011年轻型车平均燃油经济性指标
物理问答