交通状态判别一、案例背景介绍随着机动车保有量的不断上升,城市的快速发展在促进经济繁荣、社会进步的同时,也不可避免的带来了交通拥堵问题。
在交通发展的过程当中,交通拥堵是诸多问题中产生频率最高、影响最大、持续时间最长的一个。
交通拥堵增加了人们上下班的时间代价和精神压力,降低了城市运行效率,还给国民经济带来不可估量的经济损失。
交通拥堵的产生从表面看是由城市现有的路网资源与实际的出行需求之间的矛盾导致,而根本原因是城市路网规划不合理,与城市当前发展之间的失衡造成路网负荷增加、交通运行稳定性下降。
为了实现对交通秩序的实时监测和控制,城市道路和高速公路两侧布置了大量的交通数据检测器,每天可以产生千万级别的数据。
这些交通数据体量巨大、数据结构多种多样、价值丰富却又密度低,具有大数据的典型特征。
近年来,针对这些海量的交通数据如何建立有效的分析和处理流程,从中挖掘出有价值的信息,成为智能交通系统的重点研究方向。
二、多模型建模理论多模型建模方法就是对训练数据建立多个子模型,把子模型对测试数据的分析通过某种方法结合,形成最后的分析结果。
单模型结构是对非线性系统建立数学模型时的最基本方法,一般先对样本数据使用不同的理论建立一系列不同的模型,从中选择性能最优或次优的模型参与实际的应用。
对于复杂的非线性系统,单模型是一种整体上的近似解。
Bates和Granger于1969年首次提出将多个数学模型连接以提高模型的预测能力、提高系统鲁棒性的方法,自此以后多模型建模方法在时间序列分析、状态预测估计、化工预警控制等多个领域得到广泛的研究和应用。
在模型的训练过程中,通常需要收集较多的样本数据以保证神经网络对实际生产过程的充分反映。
如果样本规模较大,神经网络的结构比较庞大、训练时间加长,实际训练中先对样本聚类分析得到规模较小的子集,理论上每个样本子集的学习速度将会加快且网络结构更加紧凑,总时间也会降低。
另外,当样本数目较大时,部分数据在距离意义上相邻较近,对应的输出在距离意义上却较远,这样的样本虽然仍可以使用单个神经网络学习,但是学习之后模型的泛化能力较差。
这是将学习样本空间进行分解的主要原因。
多模型建模时一般使用加权或非加权两种策略获得最后的输出结果,其基本结构如图1、图2所示:图1基于加权策略的多模型算法基本结构图在图1中,1y 、2y ······n y 代表每个子模型的输出,1w 、2w ······n w 代表每个子模型输出在多模型最终的结果输出中所占的权重。
图2基于非加权策略的多模型算法基本结构图通过图1和图2可知,加权策略需要确定每个子模型在最终输出Y 中的权重,通过加权求和后获得最终的模型输出。
其中,权重是最重要也是最难确定的因素,该参数的取值将影响到模型的性能。
在状态估计、化工过程等实际应用中,大多数模型都是非线性、时变的系统,通过遗传算法等方法优化权值必然会增加算法的运行时间。
非加权策略又可以看成开关切换策略,通过对样本的判别分析,选择与之相对应的最优子模型实现多模型的建立。
在自动控制中如果多个扰动对控制系统同时产生作用,模型在短时间内将不断切换,从而出现较大的输出误差。
三、基于BP 神经网络的单模型交通状态判别交通状态判别算法发展至今,基本可分为模式识别、统计预测、突变理论、神经网络四大类。
传统的交通状态判别算法着重于根据交通流数据与交通状态间的数学逻辑进行理论推导、数学建模,在实际的交通流数据下检验模型的泛化能力,采用的方式多为修改表达式、调整参数,模型越来越复杂,其实际应用效果也有待考证。
正常的城市秩序下,交通流模型是复杂的动力学问题,它具有高维度、时变性、非线性等特点,因此通过传统理论建立的数学模型无法准确描述交通流的特性。
相比而言,神经网络是对人脑或自然神经网络的若干基本特性的抽象和模拟,是以计算机网络系统模拟生物神经网络的智能计算系统,它有着较强的自我学习能力。
作为一个黑箱模型,神经网络描述了将输入矢量转换为输出矢量的过程,可以在最大程度上获得不同交通状态下的交通流的近似特性。
在训练时神经网络只需要确定训练样本的格式和内部结构的各项参数即可,例如权重、神经网络结构等等。
本节应用BP神经网络实现对城市道路交通状态判别的单模型分析研究,并在不同路段的交通流数据下进行分析。
以速度、流量、占有率三个交通流参数作为输入数据,以交通状态(分为“拥堵”、“缓行”、“畅通”三个等级)作为输出。
算法步骤如下:STEP1:输入数据;STEP2:确定训练集、测试集STEP3:训练数据归一化;STEP4:网络初始化,主要包括网络结构、权值、误差;STEP5:计算隐含层、输出层输出;STEP6:计算隐含层、输出层误差;STEP7:修正隐含层、输出层的权值、阈值;STEP8:判断误差是否小于ε:是,训练结束,执行下一步;否,更新训练总步数后,跳转到STEP5;STEP9:测试数据归一化;STEP10:计算隐含层输出、输出层输出;STEP11:对分类结果统计,计算误差;STEP12:计算正确率,结束程序。
表1给出了不同结构的BP神经网络对交通状态的判别结果,其中神经元结构一栏中,[ ]中的数字代表神经网络的结构,例如“[2 3]”代表该神经网络有两个隐含层,其中第一个隐含层有2个神经元,第二个隐含层有3个神经元。
测试结果均是在同一个数据集上反复测试获得。
路段A参与整个神经网络学习过程的交通流数据共有650个,训练数据520个、测试数据130个;路段B参与整个神经网络学习过程的交通流数据一共1560个,其中训练数据1248个,测试数据312个,两个路段的训练数据与测试数据的比例均为4:1。
表1不同结构的BP神经网络的交通状态判别结果神经网络结构路段A路段B正确率运行时间(s)正确率运行时间[1]0.82 3.480.80 4.05[2]0.83 3.250.82 4.15[3]0.78 3.270.81 3.98[4]0.79 3.450.82 4.3[1 1]0.81 3.330.81 3.83[1 2]0.80 4.180.82 4.09[1 3]0.78 3.280.81 3.96[2 1]0.83 3.370.82 3.98[2 2]0.82 3.510.80 3.83[2 3]0.82 4.530.81 4.09[3 1]0.79 4.160.80 4.23[3 2]0.81 3.90.84 4.01[3 3]0.80 4.020.81 4.32通过对上述表格的分析可知,对于同一个路段,采取不同结构的神经网络有着不一样的结果,而对于不同路段,当模型的判别准确率最高时,其神经网络的结构和参数也是不一样的。
仅从准确率来看,对于路段A,神经网络的节点数结构为[2]或者节点数结构为[2 1]时性能最好,准确率可以达到83%;而对于路段B,神经网络的节点数结构为[3 2]时,神经网络的准确率可以达到84%。
同时,数据集的大小也会影响神经网络的准确率,当参与训练的数据集较大时,神经网络可以更加充分的学习模型,整体准确率相对较高。
对于运行时间,0.1s和1s在人体感官上没有太大的区别,暂时不予考虑。
图3交通状态判别结果(上:路段A;下:路段B)在图3中,横坐标代表测试数据的序号,纵坐标代表测试数据的交通状态,绿色圆圈代表算法判断状态,红色星号代表道路实际状态。
由前面所述可知,具有适宜结构的BP神经网络对于道路交通状态判别的正确率可以达到80%。
神经网络不需要人为建立交通状态判别的数学模型,不需要关注不同交通状态下的交通流各自有什么特点,只需要确定学习样本的数据格式和人工神经网络的结构等参数,就可以进行自动学习、对系统进行拟合。
但是人工神经网络也有着自己的局限性,人工神经网络的各个结构参数不能与实际的非线性系统内的结构一一对应,这极大的影响了神经网络的适用范围。
同时,训练数据和样本数据的选择使神经网络不可避免的陷入欠拟合和过拟合的问题中,如果测试数据在训练数据的样本范围之内或者相近时,运算结果是良好的;如果测试数据分布与训练数据相差较远时,模型输出将会有较大的偏差。
这也是尽可能增加样本规模的原因,数据的广泛采集可以使样本具有代表性,可以使神经网络更加有效的表达模型。
下面将通过实现多模型算法提高交通状态判别的准确率。
四、基于模糊C均值聚类的多模型交通状态判别随着城市交通的发展,每天产生千万级的过车数据。
在这样的大数据环境下,单一模型难以描述复杂的交通流环境,而80%的判别率也会产生大量的误判,引起城市交通秩序的混乱,因此,当前环境急需提高交通状态判别的准确率,减少误判的发生。
交通状态判别不是简单的多分类问题,实质上是某一分类器进行学习训练有着不同标签的交通流数据,对于测试数据进行不同交通状态等级的逻辑判断过程。
三个交通状态之间没有特别明确的界限,而是模糊的关系。
给定一组交通流数据,经过特定的数据挖掘算法的分析和判断,给出的结论应当是属于畅通的可能性是多少,属于拥堵的可能性是多少,因此,应用模糊C均值具有一定的理论意义和实际意义。
本节结合模糊C均值和BP神经网络,以多模型理论为基础设计了一种新的交通状态判别算法。
第一步使用模糊C均值(FCM)聚类算法,将训练数据进行聚类分析得到样本子集,将这些子集作为模型训练时的输入,且以每一类数据的聚类中心作为该类的中心向量;第二步建立具有差异性的BP神经网络模型,对每一类样本子集进行训练,依据正确率选择最佳模型;第三步输入测试数据,计算测试数据与中心向量的距离,根据该距离选择对应的子模型。
本文使用非加权策略建立多模型算法,并在实测数据上进行仿真研究。
本文使用的多模型非加权结构的算法如下:(1)首先对所取的样本数据进行异常数据剔除、数据标准化等数据预处理;(2)使用模糊聚类方法对于样本数据进行聚类,产生了不同的类别数据组;(3)对于每个类别数据分别采用不同结构的BP神经网络,依据正确率选取性能最优的模型作为该类数据的分类模型;(4)建立数据样本的类别判断模块,对样本进行分析,并根据结果选择相应的分类模型进行输出预测。
在类别判断模块,模糊C均值已计算出各个类别的聚类中心,通过计算样本与聚类中心的距离确定样本数据的类别,距离公式使用欧氏距离:(,)d x y=(1)其中,n=3,与交通流数据的参数个数相同。
本节设计的多模型算法流程如下:图4多模型非加权算法的流程图(上:训练流程;下:测试流程)为了说明论文采用的多模型非加权算法在交通状态判别中的可行性,多模型算法采用的数据仍然是来源于路段A和路段B的交通流数据。
论文在多模型算法的仿真过程中,使用最小-最大规范化方法对样本数据进行规范化操作。