基于多层模型的“两客一危”车辆行驶状态评价系统①

2021-01-22 05:41裴莉莉户媛姣
计算机系统应用 2021年1期
关键词:阈值聚类驾驶员

曹 磊,裴莉莉,高 尧,李 伟,户媛姣

(长安大学 信息工程学院,西安 710064)

随着我国道路运输行业的快速发展,“两客一危”道路运输车辆数量出现大幅度的增长,在方便人们出行、促进地区经济水平发展的同时,也给道路出行和乘客的生命财产安全带来了极大的考验[1].

然而,由于“两客一危”车辆的特殊性、高风险性,以及路网中“两客一危”车辆数据的相对独立性和地区差异[2],各地区(省)对于活动在本省境内的“两客一危”车辆缺乏系统性研究和管理,没有能够充分挖掘大数据背景下研究分析的方法和优势,对于“两客一危”重点车辆的跟踪监测、分析、分布与风险预测没有进行深入挖掘,从而不利于政府等监管部门的监督和决策.

另一方面,交通安全是交通领域的关键问题.交通安全条件由驾驶员,车辆和驾驶环境决定.先前的研究表明,超过90%的交通事故与不安全的驾驶行为有关.驾驶行为在驾驶风险分析中起着重要作用.但是,在现实生活中很难衡量驾驶风险[3].因此驾驶模拟器通常用于调查各种实验环境中的驾驶行为[4].诸如自然驾驶研究(NDS)和DriveCam 系统之类的一些车辆仪表技术已被广泛用于监测驾驶行为和运动学特征[5].现有的大多数危险驾驶行为分析都依赖于碰撞数据或自我报告的问卷调查[6].张辉等[7]通过设计分心模拟驾驶试验来采集驾驶人眼动特征数据,进行驾驶员的分心状态判别.侯海晶等[8]利用搭载了眼动仪的驾驶模拟器才采集驾驶员感知与操作的数据,利用这些数据对驾驶员的驾驶风格进行分类.薛清文等[9]通过采集高精度车辆轨迹数据评估驾驶员的整体驾驶状态,利用LGBM(Light Gradient Boosting Machine)算法对危险驾驶行为进行识别.为了充分探索交通事故中的驾驶行为,重要的是要保持真实驾驶情况下的驾驶行为习惯.

对于危险驾驶行为的研究,交通事故数据传统上是主要或唯一的数据源,但是交通事故在广义上来说是一个小概率事件,其所包含的信息很少,因此主动采取有效交通安全措施的方法已被忽略.其次,多层次或多结构的模型能够发现数据中所忽略的对交通安全的影响因素,对数据的多维度挖掘.最后,国内很少将积累的“两客一危”车辆大数据用于道路安全以及危险驾驶研究.

为了填补上述研究空白,本研究的研究目的主要分为以下两点.第一个目标是从宏观水平上分析不同类型的卡车驾驶员的驾驶习惯和危险驾驶的倾向.第二个目标是通过在微观层次上对车辆进行动态监控,在这两个水平的基础上建立一个多级模型来对“两客一危”的车辆进行监控和管理.该研究与现有研究的不同之处在于同时考虑了以下方面:

1)采用真实的“两客一危”车辆驾驶数据(并不是来源于模拟器产生的实验数据),并根据多个指标发现识别潜在的危险驾驶行为;

2)使用大规模数据集,本文使用的数据集以5 s 的间隔记录货车和客车的行车速度,车辆位置,车辆信息相关的数据;

3)建立反映“两客一危”车辆驾驶员危险驾驶倾向的多层次模型.

1 数据集构建

1.1 数据集概述

本文使用的数据为陕西省境内2018年9月至2019年2月共6 个月的“两客一危”车辆的行驶数据,其中每天包含大约25 000 辆车的行驶信息,每个车辆每天的行程为一个单独的数据文件,其中包含的数据项如表1所示.

表1 车辆行驶数据字段解释

1.2 数据采样与可视化

在原始数据集中,随机选择不同日期(包含节假日、工作日)、不同天气状况、一天内不同时段、不同颜色牌照以及不同道路状况的多类车辆行驶数据对驾驶员的驾驶行为进行分析.本文共选择了9000 辆“两客一危”车辆的行程(单位:天)进行研究.

在对字段的筛选中取出与驾驶员危险驾驶行为相关的车辆位置信息,例如车辆的GPS 速度,车辆时间信息与车辆的方向信息.其中车辆的位置信息用于判断车辆行驶道路类型,速度、时间与方向信息用于评判驾驶员的驾驶状态,在对数据字段进行筛选采样之后,对现有字段中每辆车每天行程(运行时间大于2 小时)的速度变化信息与方向变化信息计算方差,形成新的字段.9000 辆车的速度方差与方向方差部分数据可视化结果如图1所示.

图1 方差示例数据

1.3 零值与异常值清洗

从数据可视化图中可以发现,数据中包含大量的零值,而这些零值表示这些车辆的没有处在行驶状态,因此需要对这些零值进行清洗,清洗后的数据如图2所示.

图2 零值清洗后数据

同时,在这些数据中还有一些由于传感器的误差或者其他原因产生的异常数据,使用箱型图的方法可以有效检测到这些异常值,对去除零值后的数据进行箱型图可视化如图3所示.

图3中的“+”表示数据中的异常值,将这些异常值从原数据中清洗掉,还有7895 辆车的行驶状态数据,之后再对清洗后的数据示例进行可视化如图4所示.

图3 箱型图检测异常值结果

图4 数据清洗后结果

1.4 数据归一化

从零值与异常值清洗后的数据可视化图中可以看出,车辆行驶的速度方差和方向方差的数据分布不均衡,且波动相差较大这将在之后的距离计算中对计算结果产生影响,因此需要对数据进行归一化处理,本文使用的归一化方法为min-max 归一化方法,如式(1):

其中,Vi是真实值,Vi′是规范化之后的值.

对归一化后的数据进行可视化如图5所示.

图5 归一化数据可视化

从图5中可以看出数 据的分布已经比较均衡,之后以此数据作为输入样本对驾驶情况进行聚类分析.

2 多层模型构建

本文采用多层次的模型来对“两客一危”车辆驾驶员的驾驶行为进行分析评价,多层次主要体现在宏观与微观两个层次.宏观层面上对驾驶员的一次行程信息进行分析以评判其驾驶平稳性,微观层面对驾驶员驾驶车辆在不同速度下的危险驾驶行为进行识别.多层模型的结构如图6所示.

图6 “两客一危”车辆行驶状态多层评价模型

2.1 宏观层次聚类分析模型

对车辆行驶数据的宏观层次分析可以使用聚类的方法.聚类分析是一种无监督的学习技术,可将一组物理或抽象对象划分为几个相似的聚类以获得全局数据图或对特定聚类进行进一步分析.通过聚类生成的类是一组数据对象,与原始组中的其他对象(基于相似性进行聚类)相比,它们具有更大的相似性.相似性由研究对象的属性值确定,相对距离是一种常用的措施.

本文选择基于相对距离的聚类算法K-means 对数据进行聚类,该方法能够将数据划分为预定数量的聚类(假设有足够多的不同情况).

基于距离的算法依靠距离度量(函数)来度量数据点之间的相似度.距离度量的标准是欧氏距离、余弦或快速余弦距离.根据所使用的距离度量将数据点分配给最近的群集,该算法认为两个数据对象的距离越近,相似度就越大;距离越远,相似度就越小.它基于样本空间中最有代表性的点,迭代地将所有数据样本划分为不同的类别,使聚类出来的每个簇的聚合度最高,簇间的分离度最高.对于距离度量本文采用欧式距离计算方法计算,公式如式(2)所示:

其中,xi和xj为计算距离的两个点,m为样本维度数,n为当前维度.

K-means 算法因其算法框架清晰简单易懂,处理大数据集的算法相对可扩展且高效的优点其才得到大量的应用;当数据集的类密集且类与类之间的差异明显时,该算法处理的效果最好.使用该算法对数据进行聚类分析的首要任务就是给出要生成的类的数目k,k值是否合适可以通过计算SSE(簇内误差平方和)来评价.SSE-Kmeans 聚类算法中的核心思想是:

1)在聚类分析中随着数据簇数k的增加,样本拆分变得更加复杂并且精细,而且每个类别的聚合强度逐渐增加,因此平方误差和SSE自然降低.

2)如果k小于真实簇的数量,则k的增加将大大增加每个簇的内聚性,因此SSE的下降程度将会很大.并且当k达到真实簇的数量时,再通过增加k的值得到的聚合程度的增加将会迅速变小,因此随着k值的持续增加,SSE的下降率迅速下降并逐渐趋于平稳.也就是说,SSE和聚类类别数k之间的关系呈肘形,其中肘形图中肘部对应的k值就是数据中真实簇的数量.

对于一个特定的d维数据集合D=(x1,x2,…,xn),SSE-Kmeans 算法的步骤如图7所示.

图7 SSE-Kmeans 算法步骤

2.2 微观层次动态阈值评判

对车辆行驶数据的微观层次分析中使用动态阈值的分析方法.在车辆危险行驶状态的评判及等级划分的研究中,当前学者多采用固定阈值的方法,但是车辆在不同速度的情况下危险驾驶的评判应当也不相同,如速度越快急转向的评判阈值应该越小,因此基于速度的车辆危险行驶状态的动态阈值评判更符合实际情况.

Han 等[10]利用车辆黑匣子收集了速度、加速度及横摆角速度数据,识别了急加速、急减速、急转弯、突然换道4 种车辆危险行驶状态,并提出了基于不同速度区间的阈值划分方法,如表2和图8所示.

表2 微观模型动态阈值

图8 动态阈值分布图

本文使用上述阈值对“两客一危”车辆每条记录的行驶状态进行评判并记录,并结合宏观模型对车辆行驶平稳状态的评估得到车辆的总体评价[11-13].接下来主要介绍宏观层次模型的应用.

3 数据聚类分析

对数据使用SSE-Kmeans 聚类算法进行聚类首先需要确定簇的个数(即k),k值可以通过簇内误差平方和(within-cluster SSE)确定,SSE的计算方法如式(3)所示:

其中,x(i)表示第i个数据点,µ(j)表示j簇的中心,n和m表示样本的维度.

对归一化数据进行SSE计算结果如图9所示.

图9中可以看出当k值为4 时,正好是手肘的位置,即为最佳聚类簇数.使用SSE-Kmeans 算法对数据进行聚类,得到结果如图10所示.

图10中每一个颜色代表一个数据簇,“X”符号代表每类数据点的中心.

同时采用基于密度的聚类方法DBSCAN (Eps=0.5,nPts=10)对数据进行聚类可以得到的结果如图11所示.

图9 SSE 与k 值的关系

图10 SSE-Kmeans 算法聚类结果图

图11 DBSCAN 算法聚类结果图

从图11可以看出,DBSCAN 算法将数据聚类为一类.与图10对比可知,当数据量的类密集时,基于密度的聚类算法DBSCAN 对行驶平稳性数据的聚类效果并没有基于相对距离的算法SSE-Kmeans 对行驶平稳性数据的聚类效果好[14,15].因此本文将对SSE-Kmeans算法的聚类结果进行分析与讨论.

4 结果分析与讨论

图10中每类的数据点数及每类数据点占总数据点的比例如图12所示.

图12 每类数据的分布情况与所占比例

对聚类结果从每类数据点的特点进行分析可以得出以下结论:

1)第1 类数据点(图10中绿色点)代表了这些车辆中行驶最为平稳的一些个体,这些个体在一天的行程中速度和方向的变化都较为稳定,因此处在这一类的车辆驾驶员潜在危险驾驶的倾向性特别低.

2)第2 类数据(图10中黄色点)则代表了车辆速度平稳性较好但方向平稳性较差的个体,说明这些车辆在这一天的行程中有可能行驶在弯道较多路况较差的道路上,虽然其方向平稳性较差,但是速度变化稳定,因此这一类的车辆驾驶员的危险驾驶倾向比较低.

3)第3 类数据(图10中蓝色点)代表了车辆方向平稳性较好但速度平稳性较差,说明这些车辆在这一天的行程中有可能行驶在弯道较少路况较好的道路上,但由于其速度平稳性较差即速度变化较大,好在其方向的变化性较小,因此处在这一类的车辆驾驶员的危险驾驶倾向也比较低.

4)第4 类数据(图10中红色点)代表了车辆方向平稳性较差且速度平稳性也较差或者方向平稳性较好但速度平稳性差的车辆,说明这些车辆在这一天的行程中有可能以很差的速度平稳性行驶在路况不好的道路上,或者以很差的速度平稳性行驶在路况较好的道路上,但是由于路况较好时车速也更快其危险驾驶行为造成的后果也更严重,因此这种特点都说明处于这一类的车辆驾驶员的危险驾驶倾向比较高.

结合上面的分析结果,可以发现88%的车辆都处于低,或者较低的危险驾驶倾向区域,其中有24%的车辆在这一天的行程中速度和方向的平稳性均比较低,剩余的12%的车辆在这一天的行程中含有较高的危险驾驶行为的倾向.聚类结果分布如图13.

图13 聚类结果分布图

此外,据图13的分布情况可以看出,车辆数据点中的大部分都集中在数据分布图的右下方,陕西省内的“两客一危”车辆主要行驶在弯道较少路况较好的道路上,因此应该主要关注这些车辆的速度以及加速度的变化即可.

当需要对某车辆的行驶平稳性进行评价时,在宏观层面上首先计算其行程方向与速度数据方差,之后判断其属于哪一类数据簇,那么其行驶状态就具有那一类数据的特点.同时在微观层面上对其行驶过程中的急加速、急减速、急转向、突然换道次数进行计算.结合两个层面上的分析结果对车辆的形式状态以及驾驶员的驾驶习惯进行全面准确的评估.

5 结语

本文采用陕西省内的“两客一危”车辆的行驶GPS数据,提出了用以评价“两客一危”车辆行驶状态的多层次模型,其中多层次模型包含宏观评价模型与微观评价模型,宏观模型基于SSE-Kmeans 算法对车辆行程的速度与方向方差进行聚类分析从而评价车辆行程行驶状态稳定性,微观模型主要通过动态阈值的方法评价车辆行驶中急加速、急减速、急转向的次数.且这些评价均与实际情况相符,能够较为准确地对车辆行驶状态进行评价.对于管理部门而言,能够根据该结果及时对有危险驾驶倾向的驾驶员做出提醒并重点监测,提高车辆的安全驾驶程度,降低“两客一危”车辆的事故发生率,从而保障人民的生命财产安全,提高运输效率、应急处置和政策决策能力.

猜你喜欢
阈值聚类驾驶员
一种傅里叶域海量数据高速谱聚类方法
基于高速公路的驾驶员换道意图识别
非平稳声信号下的小波变换去噪方法研究
基于眼动的驾驶员危险认知
基于知识图谱的k-modes文本聚类研究
基于改进阈值的MRI图像降噪
基于数据降维与聚类的车联网数据分析应用
驾驶员安全带识别方法综述
土石坝坝体失稳破坏降水阈值的确定方法
一种改进小波阈值去噪法及其仿真