为构建合理的汽车行驶工况,以给定的轻型汽车行驶数据为基础,分别运用运动学片段分析法、主成分分析法和K-均值聚类分析法对实测数据进行降维和分类,并结合相关系数法从各类运动学片段库中选取具有代表性的片段,构建反映汽车行驶特征的汽车行驶工况曲线。最后,为验证所构建的汽车行驶工况的有效性和精确性,计算作为评价体系的8个特征参数的相对误差和总体误差。结果表明,构建的汽车行驶工况曲线所反映的汽车运动特征在一定程度上可以代表数据源对应的特征,所构建的行驶工况具有有效性和精确性。 In order to construct a reasonable driving cycle of the car, on the basis of a given light vehicle driving data, respectively using kinematics fragment analysis, principal component analysis (PCA) and K-Means clustering analysis of measured data for dimensionality reduction and classification, combined with the correlation coefficient method and the cumulative frequency method from the various segments in the library to select representative kinematics fragments, so as to build a curve of vehicle driving cycle which can reflect the characteristics of the car’s driving. Finally, in order to verify the validity and accuracy of the constructed vehicle driving cycle, the relative errors and total errors of the eight characteristic parameters of the evaluation system were calculated. The results show that motion characteristics of the vehicle reflected in the constructed vehicle driving cycle curve can represent the corresponding characteristics of the collected data sources to a certain extent, and this constructed driving cycle is effective and accurate.
为构建合理的汽车行驶工况,以给定的轻型汽车行驶数据为基础,分别运用运动学片段分析法、主成分分析法和K-均值聚类分析法对实测数据进行降维和分类,并结合相关系数法从各类运动学片段库中选取具有代表性的片段,构建反映汽车行驶特征的汽车行驶工况曲线。最后,为验证所构建的汽车行驶工况的有效性和精确性,计算作为评价体系的8个特征参数的相对误差和总体误差。结果表明,构建的汽车行驶工况曲线所反映的汽车运动特征在一定程度上可以代表数据源对应的特征,所构建的行驶工况具有有效性和精确性。
K-Means聚类分析,汽车行驶工况,主成分分析,运动学片段
Xiaowen Su, Pingjun Dong
Donghua University, Shanghai
Received: Apr. 18th, 2022; accepted: May 23rd, 2022; published: May 30th, 2022
In order to construct a reasonable driving cycle of the car, on the basis of a given light vehicle driving data, respectively using kinematics fragment analysis, principal component analysis (PCA) and K-Means clustering analysis of measured data for dimensionality reduction and classification, combined with the correlation coefficient method and the cumulative frequency method from the various segments in the library to select representative kinematics fragments, so as to build a curve of vehicle driving cycle which can reflect the characteristics of the car’s driving. Finally, in order to verify the validity and accuracy of the constructed vehicle driving cycle, the relative errors and total errors of the eight characteristic parameters of the evaluation system were calculated. The results show that motion characteristics of the vehicle reflected in the constructed vehicle driving cycle curve can represent the corresponding characteristics of the collected data sources to a certain extent, and this constructed driving cycle is effective and accurate.
Keywords:K-Means Cluster Analysis, Vehicle Driving Cycle, Principal Component Analysis, Kinematic Fragment
Copyright © 2022 by author(s) and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
汽车行驶工况(Driving Cycle)又称车辆测试循环,是通过数据分析所构建的描述汽车行驶的速度–时间曲线(见图1和图2)。它可以体现汽车道路行驶的运动学特征,模拟真实的交通状况,以测试车辆尾气排放和燃料消耗。此外,其在交通协同控制、新车评价、风险评估和车辆的设计、选型、匹配和控制策略等方面有着广泛的应用 [
图1. 欧洲NEDC工况
目前,构建行驶工况的常用方法有单纯的短行程法、基于聚类的方法和基于马尔可夫链的方法。短行程法将数据划分为短行程片段,通过分析片段的特征参数组合,生成相应的行驶工况。国外学者Lin等采用短片段划分以及随机过程选择方法构建了行驶工况 [
图2. 世界WLTC工况
利用聚类算法对样本数据进行分类,根据分类结果从中筛选出最佳短行程样本,最后组合为典型工况。国外学者Fotouhi等采用K-Means聚类算法构建了德黑兰的行驶工况 [
然而由于交通环境的影响,汽车实际行驶工况具有较大的随机性,也有文献对基于马尔可夫链的方法进行研究。姜平等利用聚类和马尔可夫方法构建了城市汽车行驶工况 [
基于上述分析,本文以给定的某城市轻型汽车实际道路行驶采集的近十九万条数据为基础,结合运动学片段、主成分分析以及聚类分析的主要方法来构建汽车行驶工况,将划分的运动学片段聚成3类,并结合相关系数法从各类片段库中选取最优片段,从而构建出能体现汽车行驶特征的典型汽车行驶工况。通过与采集的总样本数据进行对比分析,验证了所构建行驶工况的准确性。
本文使用的数据集是某城市中给定的一辆轻型车辆采集的实际道路行驶数据,数据集中共有189,725条数据,如下表1所示。
编号 | 时间 | GPS车速 | X轴加速度 | Y轴加速度 | Z轴加速度 | 经度 | 纬度 | 发动机转速 | 瞬时油耗 |
---|---|---|---|---|---|---|---|---|---|
1 | 2017/12/18 13:42:20 | 0 | 0 | −0.324 | −0.936 | 119.3678 | 25.99242 | 900 | 0.36 |
2 | 2017/12/18 13:42:21 | 4.5 | 0 | −0.324 | −0.918 | 119.3678 | 25.99241 | 1025 | 0.44 |
3 | 2017/12/18 13:42:22 | 6.9 | 0 | −0.324 | −0.936 | 113.3678 | 25.9924 | 1137 | 0.46 |
∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ |
表1. 汽车行驶数据(局部)
采集设备直接记录的原始采集数据通常会包括一些不良数据值,为了使得数据集中的汽车行驶数据更加合理有效,需要对原始数据进行处理与清洗。将不良数据分为缺失数据、尖点数据、毛刺数据以及怠速数据几个类型,数据处理主要包含以下四个方面:
1) 缺失数据插值处理。对于数据时间不连续的缺失数据,通过Matlab程序找出相邻两个时间间断,但是速度 > 0的节点进行插值处理。综合考虑各类因素,选择Hermite插值法。
2) 尖点数据的平滑处理。尖点数据是指两个相邻速度之间存在较大差异的数据,在行驶过程中,会因为各种原因造成异常加减速的数据。采用线性插值法对尖点数据选择进行平滑处理,令其等于前一个车速和后一个车速的平均数。
3) 毛刺数据删除处理。在车辆较长的怠速期间内,突然出现的个别汽车速度不为0的数据片段称作毛刺数据。而在汽车实际行驶状况中这种情况是不可能会出现的。而这种数据对后续的运动片段划分有较大的影响,因此需要清洗这些数据。
4) 怠速数据删除处理。汽车怠速是指当汽车停止运动但发动机保持最低转速时的状态。当怠速时间超过180 s时,一般视为异常情况。因此,需要将这种异常数据剔除掉。处理方法为:判断怠速的起点和终点,若连续怠速时间超过180 s,则保留靠近怠速终点的最后180秒数据,删除前面的异常数据。
使用Matlab软件进行数据处理,经处理后的数据集中的数据量如表2所示。
原始数据量 | 插值拟合后数据量 | 最终处理完成后数据量 | 原始数据与最终数据的差额 |
---|---|---|---|
185,725 | 217,506 | 178,667 | −7085 |
表2. 处理前后数据量对比
运动学片段也称为短行程,是指汽车从怠速状态开始到下一个怠速状态开始之间的速度范围,如图3所示,主要包括怠速阶段、加速阶段、匀速阶段和减速阶段 [
图3. 运动学片段的定义
汽车行驶工况是由多个具有代表性的运动学片段组合而成,选取具有代表性的运动学片段需要有计算出其特征参数作为标准与依据。在运动学片段的评估分析中,特征参数能够体现该运动学片段的交通特征。因此,对划分后的运动学片段进行特征参数提取和特征值计算。所选用的描述运动学片段的17个特征参数如下表3所示。
序号 | 特征参数 | 意义 | 单位 |
---|---|---|---|
1 | T | 运行时间 | s |
2 | T a | 加速时间 | s |
3 | T d | 减速时间 | s |
4 | T c | 匀速时间 | s |
5 | T i | 怠速时间 | s |
6 | P a | 加速时间比 | % |
7 | P d | 减速时间比 | % |
8 | P c | 匀速时间比 | % |
9 | P i | 怠速时间比 | % |
10 | a a | 平均加速度 | m/s2 |
11 | a d | 平均减速度 | m/s2 |
12 | S | 运行里程 | km |
13 | V max | 最大速度 | km/h |
14 | V m | 平均速度 | km/h |
15 | V m e | 平均行驶速度 | km/h |
16 | V s d | 速度标准差 | km/h |
17 | a s d | 加速度标准差 | m/s2 |
表3. 特征参数定义表
计算得到各个运动片段的每个运动特征参数值,部分数据如下表4所示。
片段编号 | 运行时间 | 加速时间 | 减速时间 | 匀速时间 | 怠速时间 | 加速时间比 | 减速时间比 | 匀速时间比 | 怠速时间比 |
---|---|---|---|---|---|---|---|---|---|
0 | 68 | 25 | 19 | 16 | 8 | 0.3676 | 0.2794 | 0.2353 | 0.1176 |
1 | 369 | 110 | 86 | 76 | 97 | 0.2961 | 0.2331 | 0.2060 | 0.2329 |
∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ | ∙∙∙ |
表4. 各运动学片段特征值(局部)
(a)
(b)
原始数据常常存在量纲不一致的特点,首先采用最大最小标准化方法来进行数据标准化。其次,由于过大的数据量会大大降低计算效率,不利于聚类分析等各种问题,因此经过数据处理和运动学片段划分后,将利用主成分分析法对标准化处理之后的数据进行降维处理,目的是减少变量,提高后续计算能力。
运用Python软件进行主成分分析,贡献率从大到小依次排列并计算累计贡献率,输出结果见表5所示。通常选择累计贡献率小于85%的主成分,前4个主成分累计贡献率达88.59%,因此将用4个主成分替换17个特征参数用于工况的构建,将数据由17维降到了4维。
主成分排序 | 贡献率 | 累计贡献率 |
---|---|---|
主成分1 | 54.702379% | 54.702379% |
主成分2 | 14.875836% | 69.578215% |
主成分3 | 14.223835% | 83.802050% |
主成分4 | 4.791009% | 88.593059% |
表5. 各主成分贡献率及累计贡献率
主成分分析为聚类分析做准备,聚类分析是本文的重要方法,本文选择K-Means聚类方法对主成分评分数据进行处理。首先,采用手肘法来确定k值,也就是将数据分为几类。在K-Means算法中,k值的选择往往对聚类结果具有一定的影响,为了评估聚类效果,选用平方误差和(SSE)作为聚类结果的评估指标。通过每个簇点与其质心之间距离的平方来计算SSE [
对降维后的数据进行K-Means聚类分析,首先需要确定k值,手肘图如图4所示。根据手肘图的拐点,选择聚类簇个数k值为3,将所有的运动学片段分为3类,聚类效果图如图5所示。其中横纵坐标分别是降维后的数据的前两列。
图4. 手肘图
图5. 运动学片段聚类图
通过评估聚类中心的特征值,找到每一类数据的特点,聚类中心的特征值如表6所示。
第1类 | 第2类 | 第3类 | |
---|---|---|---|
运行时间 | 0.016645 | 0.049312 | 0.006694 |
加速时间 | 0.046925 | 0.170074 | 0.007414 |
减速时间 | 0.043017 | 0.133798 | 0.009014 |
匀速时间 | 0.005981 | 0.018844 | 0.000666 |
怠速时间 | 0.093908 | 0.126895 | 0.150542 |
加速时间比 | 0.358979 | 0.449658 | 0.074917 |
减速时间比 | 0.385482 | 0.359781 | 0.169062 |
匀速时间比 | 0.232071 | 0.296445 | 0.13232 |
怠速时间比 | 0.220116 | 0.104162 | 0.699957 |
平均加速度 | 0.154096 | 0.130917 | 0.084096 |
平均减速度 | 0.70828 | 0.70739 | 0.779982 |
运行里程 | 0.006225 | 0.05314 | 0.000661 |
最大速度 | 0.228996 | 0.491348 | 0.065986 |
平均速度 | 0.140942 | 0.383227 | 0.018834 |
平均行驶速度 | 0.181354 | 0.423988 | 0.056988 |
速度标准差 | 0.179724 | 0.432003 | 0.03754 |
加速度标准差 | 0.339284 | 0.297921 | 0.196263 |
表6. 聚类中心的特征值
从以上的特征值表中,发现第三类运动学片段中怠速比例最高,达到69.9%,说明第三类片段代表的是堵车严重的路段,而第一二类数据的怠速时间比相对于第三类则明显减少,并且第二类数据的平均速度是三类数据中最高的,是道路通畅的路段。
原始数据经过清洗、运动学片段的划分、降维与分类后,考虑到每个分类中的数据量还会较大,因此需要从每类运动学片段中抽取合适的片段来合成行驶工况。在选取运动学片段时考虑它们的相关性,即相关系数。在每个聚类中选取与该类特征值相关系数最大的若干代表性运动学片段构建车辆的行驶工况。计算出各类运动学片段和它所在的类别中心的相关系数,列取出相关系数较大的前10个运动片段如表7所示。
片段编号 | 第1类 | 片段编号 | 第2类 | 片段编号 | 第3类 |
---|---|---|---|---|---|
1105 | 0.997226 | 1263 | 0.999974 | 1369 | 0.999746 |
1101 | 0.996365 | 905 | 0.999971 | 1418 | 0.999603 |
446 | 0.996007 | 322 | 0.999968 | 832 | 0.999082 |
38 | 0.995294 | 993 | 0.999923 | 1220 | 0.998655 |
418 | 0.994683 | 1077 | 0.998996 | 591 | 0.998048 |
358 | 0.99411 | 352 | 0.998889 | 13 | 0.997702 |
1028 | 0.994041 | 797 | 0.998862 | 1355 | 0.997099 |
1255 | 0.993906 | 306 | 0.998754 | 194 | 0.996822 |
24 | 0.993869 | 1237 | 0.998617 | 916 | 0.996668 |
610 | 0.989902 | 1111 | 0.998466 | 1178 | 0.994999 |
表7. 各类运动学片段相关系数大小
由于拟定构建的行驶工况的时间长度为1200~1300 s,分别从第一类工况中选取3个运动学片段,从第二类工况中选取4个运动学片段,从第三类工况中选取2个运动学片段。将所选运动学片段首尾相连,最终构建的长度为1265 s的行驶工况如图6所示,横坐标为时间(s),纵坐标为速度(km/h)。
图6. 行驶工况图
由于前期行驶工况的构建是由对于试验数据采取统计的方法得到的,所以要验证其与原始数据之间的差异 [
序号 | 特征参数 | 意义 | 单位 |
---|---|---|---|
1 | P a | 加速时间比 | % |
2 | P d | 减速时间比 | % |
3 | P c | 匀速时间比 | % |
4 | P i | 怠速时间比 | % |
5 | a a | 平均加速度 | m/s2 |
6 | a d | 平均减速度 | m/s2 |
7 | V m | 平均速度 | km/h |
8 | V m e | 平均行驶速度 | km/h |
表8. 误差分析所用参数
根据相对误差和绝对误差的公式,总体数据与构建的汽车行驶工况的误差分析如表9所示。从表中可知,所构建的行驶工况的特征参数中,多数参数小于10%,尤其平均加速度的相对误差为0.75%,从特征参数的验证结果来看,行驶工况的构建方案是比较合理的。
特征参数 | 加速比例 P a | 减速比例 P d | 匀速比例 P c | P i 怠速比例 | a a 平均 加速度 | a s d 平均 减速度 | V m 平均 速度 | V m r 平均 行驶速度 |
---|---|---|---|---|---|---|---|---|
构建工况 | 0.283 | 0.3075 | 0.2055 | 0.204 | 0.3754 | −0.3714 | 6.6598 | 8.3661 |
采集总体 | 0.2646 | 0.2222 | 0.3338 | 0.1794 | 0.3726 | −0.4948 | 7.134 | 8.6935 |
相对误差 | 6.95% | 38.39% | 38.44% | 13.71% | 0.75% | 24.94% | 6.65% | 3.77% |
表9. 汽车行驶工况的误差分析
本文以某城市轻型汽车实际道路行驶采集的近十九万条数据作为实验数据集,划分出1421个运动学片段,提取描述运动学片段的17个特征参数,采用主成分分析和K-Means聚类算法对特征参数矩阵进行降维和分类处理,将运动学片段分为3类,并结合相关系数法从3类运动学片段库中选取代表性片段,从而构建出了符合数据源中汽车行驶特征,时长1265 s的车辆行驶工况。通过分析实验数据与行驶工况的特征参数,验证了工况的准确性。
实验结果表明,本文中行驶工况的构建方案比较合理,拟合出的轻型汽车行驶工况能反映真实数据特征,符合城市道路实际工况。然而本文对于工况构建的指标没有考虑到现实生活中存在的地形、环境、温度等不确定性因素,这些因素均可能影响运动学片段的走势,未来可以进一步结合马尔科夫链方法进行研究。
苏晓雯,董平军. 基于K-Means聚类分析的汽车行驶工况构建Construction of Vehicle Driving Cycle Based on K-Means Cluster Analysis[J]. 建模与仿真, 2022, 11(03): 842-851. https://doi.org/10.12677/MOS.2022.113078