基于MATLAB聚类分析驾驶员差异化ACC

汽车   2024-10-08 08:45   上海  

作者 | 不可说
出品 | 汽车电子与软件



#01
引  入  
 
目前,自适应巡航控制系统(ACC)受到许多驾驶员的欢迎。然而,ACC在车辆中的应用是固定的,在相同的驾驶条件和相同的车辆条件下,不同的驾驶员在打开ACC后会经历相同的加速情况。对于一位驾驶员来说,这种加速情况与他的驾驶习惯相似,所以他在ACC下感觉很舒服,但对于其他驾驶员来说可能不合适。因此,我们对不同的驾驶员实际行车过程的跟车距离进行采样、分析。

K-means是一种广泛使用的聚类算法,它将数据集分成K个簇,使得每个簇内的数据点尽可能接近该簇的中心(均值)。MATLAB中的kmeans函数可以直接用来执行K-means聚类,本文可基于该函数直接对驾驶员行为进行分类分析。



#02
实车数据采集
  

首先要基于实车平台收集了大量的实际驾驶数据。实车平台包括一辆作为后车的跟随车辆和一辆前车—被跟随目标车。后车设置惯性导航系统,可以准确测量后车的速度和加速度等状态信息。通过CAN总线,可以收集驾驶员的控制信息,如油门踏板开度、牵引活塞的标称容量和方向盘角度。安装在前车上的惯性导航系统还可以实时测量车辆状态信息。
         

 

基于上述实验设备,对一定量的驾驶员信息进行统计分类如下:   


在实验中,前车由驾驶员驾驶,速度控制在0~25m/s之间,包括减速、加速和恒速停车等不同驾驶条件,以测试不同驾驶员在此测试条件下的驾驶操作。


聚类分析  


k-means算法介绍

我们想根据司机的驾驶习惯和习惯将他们分为几类。我们计划使用k-means算法进行聚类分析。k-means算法解决的主要问题如下图所示。我们可以看到图表左侧有一些点。我们可以用肉眼看到四个点群,我们可以使用k-means算法在计算机上找到这些群。
K-means算法原理

输入:簇号k和包含N个数据对象的数据库。

输出:K聚类用于最小方差标准。

(1) 从N个数据对象中选择k个对象作为初始聚类中心。

(2) 根据每个聚类对象的平均值,计算每个对象与这些中心对象之间的距离,并根据最小距离划分相应的对象。

(3) 重新计算每个(已更改的)聚类的平均值(中心对象)。

(4) 循环(2)直到(3),直到每个集群不再改变。   

k-means算法接受k的输入量;然后将N个数据对象分为k个聚类,以满足聚类要求:同一聚类中对象的相似性越高;不同聚类中对象的相似性较小。聚类相似度是通过使用每个聚类的平均值来计算的,以获得一个“中心对象”(重心)。

聚类结果

使用MATLAB从驱动程序中导入数据样本。提取后车加速度、相对距离、相对速度、后车速度、前车速度、前车加速度共六个特征参数,作为聚类的输入。k-means算法通过MATLAB编写,输入七个特征参数矩阵,输出三种驾驶类型。结果如图4所示。

聚类分析结果

从整体上看,聚类效果非常好,驱动样本大致可分为三类。




#03
MATLAB搭建ACC控制算法
  

ACC系统的总体架构如下图所示:


速度控制模式也称为巡航模式,距离控制模式也称为跟车模式。

参数识别    

基于上述聚类结果,我们得到了不同类型驾驶员的实际跟车数据分布。假设每种类型的数据样本集为and.
         

 

通过有效的数据提取,我们可以得到所有类型驾驶员在巡航模式和跟车模式下的实际驾驶过程。参考以下内容,本文认为驾驶员的差异化特征主要体现在加速过程、跟车过程和跟车距离上。
         

 

巡航模式  


在这里,我们以指数函数的形式描述了飞行员的加速过程。在这里,我们以指数函数的形式描述了飞行员的加速过程。如下式所示:


         

 

在上述公式中,通过计算’k’时刻的速度表示下一个’(k+1)’时刻的预期速度。表示驾驶员设置的巡航速度,表示速度差阈值,表示当前巡航速度与后车辆速度之间的速度差,,是当前“k”采样时间的后车辆速度,速度的变化过程由参数a决定。

在实际应用中,我们发现驾驶员对加速过程的敏感性不同于对减速过程的敏感性,也就是说,同一驾驶员的加速和减速过程的值在a值上也不同。
         

 

当后车速度与预期巡航速度之间的差异相对较小时,驾驶员通常会快速增加巡航速度。当速度差较大时,驾驶员通常会逐渐增加加速度,然后缓慢增加巡航速度。这表明指数加速过程中的参数“a”需要分段确定。
         

 

   
假设加速/减速过程被划分为“n”个分段指数过程,数据集(i=1,2,3)被划分为n个子集,k个子集的子集数为

         

 

根据实际驾驶数据确定的加速/减速过程可以表示为分段函数。

         

 

对于数据长度为,基于带遗忘因子的最小二乘算法的参数的估计方差为:




其中,遗忘因子:0≤μ≤1。是迭代中的过程矩阵,是输出,,是可观测数据矩阵。观测长度为L,采样周期为T。因此:


      

对于我们的实验,由于每个实验的速度控制在相同的范围内,因此每个加速/减速过程都被认为是上述分段函数的一部分。

下面六个图为拟合结果。这些数字包括多个驾驶员的加速/减速轨迹和拟合结果。)

第一种驾驶员加速和减速巡航的结果如下图所示:。   


 
具有与上面驾驶员相同参数“a”的另一位驾驶员的拟合结果如下图所示:



第二类驾驶员加减速巡航结果如下图所示:.。



具有与上面驾驶员相同参数“a”的另一位驾驶员的拟合结果如下图所示:


    
第三种驾驶员加减速巡航结果如下图所示:



具有与上面驾驶员相同参数“a”的另一位驾驶员的拟合结果如下图所示:



跟随模式

 

通过固定跟车时间间隔模型,可以获得车辆之间的预期距离:


其中,τ表示线性系数,表示最小跟车距离,表示后车速度。

参考目前关于驾驶员跟驰过程的研究,车辆跟驰过程中的车辆加速度可以表示如下:


假设与车辆保持平衡,相对速度为零,相对距离为两辆车之间的预期距离



假设在跟车过程中,驾驶员控制距离处于平衡点,泰勒模型在平衡点展开:


   

然后可以得到以下模型


对于以下跟车模型,采样周期为T,可以获得离散的跟车过程:

         

 

驾驶员在k时间的实际驾驶数据的相对速度被记住为,相对车辆距离为,预期车辆距离为;观察步长为L。



      


使用最小二乘参数算法的一次性计算:



后车的拟合加速度如下:


速度拟合为:

   

拟合结果如下图所示:

第一种驾驶员跟随模式的参数和拟合曲线如图:.。



第二种驾驶员跟车模式的参数和拟合曲线如图所示:





#04
差异化结果分析  
  

在巡航模式下,设定的巡航速度为驾驶员设定的固定值,因此与实验中汽车的速度和汽车之间的距离等无关。当参数“a”合适时,曲线拟合效果更好。三种类型驾驶员的拟合参数“a”在加速和减速过程中是不同的,也就是说,每个驾驶员都可以使用唯一的参数“a“进行拟合,而每个驾驶员的加速和减速参数a是不一样的。这是因为驾驶员在加速和减速时的差异化。
         

 

通过对三种驾驶员在巡航模式下的速度曲线进行分析和拟合,发现第一种驾驶员的速度更快、更猛。第三类司机的速度较慢,也较为温和。第二类司机介于两者之间,因此,第一类司机可以定义为radical,第二类驾驶员可以定义为commonly,第三类驾驶员被定义为conservative。


实验的参数“a”值分析如下:radical的最小,最小。conservative的最大,最大;

在以下模式下,速度拟合曲线和车辆间距拟合曲线的理论计算比实验中更理想,不会出现突然跳跃或频繁波动。换句话说,拟合曲线实际上是对真实曲线的滤波,曲线过于平滑,虽然拟合曲线和真实曲线不能完全重合,但拟合曲线可以使车辆更平稳,基本符合驾驶员的驾驶特性,驾驶乘坐更舒适。与巡航模式相同,在以下模式中,三组驾驶员对应三组不同的参数值。


通过实验分析得到的参数值为:radical的wN2最大,wF最大;保守驱动器的wN2最小,wF最小;不同驾驶员的差异化驾驶风格在两种模式下的控制参数差异很大。
         

 

不同类型的驾驶员有不同的驾驶个性和风格。现有的单一ACC车型不能很好地适应每种类型的驾驶员。根据实验,我们可以将驾驶员分为三种类型,设计相应的三套ACC,具有不同的控制参数,使其对应于三种驾驶风格。使自适应巡航系统更加差异化,更好地适应每个驾驶员的风格。



/ END /
         

 

    

   

 

    

汽车电子与软件
每天分享一篇技术文章!
 最新文章