基于RBF的交通异常事件自动检测算法
3.1 RBF在交通事件检测的应用
人工神经网络算法是模拟人脑的思维过程,进行并行处理获得最终结果。神经网络方法是从真实的有代表性的交通流数据出发,归纳出交通流的规律,即给定交通流参数的某些样本点,神经网络利用给定的样本点进行学习,进而求出近似的交通流特性。目前在异常事件检测方面应用较广的神经网络主要有两种:BP(Back Propagation Neural Network)神经网络径向基函数(Radial Basis Function,RBF)神经网络。
RBF神经网络是由J.Moody和C.Darken于20世纪80年代末提出的一种神经网络,它是具有单隐层的3层前馈网络[7]。RBF网络能任意精度逼近任意连续函数。RBF网络是一种3层前向网络,由输入层、若干个隐层和输出层组成,层与层之间是全连接的,由输入到输出的映射是非线性的,而隐层空间到输出空间的映射是线性的,而且RBF网络是局部逼近的神经网络,可大大加快学习速度并避免局部极小问题,适合于实时控制的要求。采样RBF网络构成的控制系统,可有效提高系统的精度、鲁棒性和自适应性。因此,本文采用RBF神经网络算法来对交通异常事件进行检测。
3.2 RBF网络算法
RBF神经网络是具有单隐层的三层前馈网络。多输入单输出的RBF网络结构如图2:
图2 RBF神经网络结构
图2中,为网络的输入向量,为网络的径向基向量,其中为高斯基函数,即。网络中第个节点的中心矢量为,其中。
网络输入与输出之间的映射关系为:
(5)
式中(其中)是第个基函数与输出节点的连接权值。构造和训练一个RBF神经网络就是要使它通过学习,确定每个隐层神经元基函数的中心,宽度以隐层到输出层的权值向量,从而建立所研究系统的输入到输出映射。
RBF网络逼近的性能误差函数为:
所有样本误差:(式中为输出样本数) (6)
其中一个样本误差;
(式中为输出层第个神经元的期望输出) (7)
算法步骤如下:
(1)初始化权值;
(2)按式(5)计算出第个网络的输出;
(3)按式(6)计算出误差,若对所有的的,,则结束学习,否则转入下一步;
(4)修正连接权值,
(8)
然后转入步骤(2)。
RBF神经网络是通过MATLAB工具箱中的newrb()函数来实现[8],其调用格式为:net=newrb(P,T,goal,spread,MN,DF)。其中,P,T分别为输入样本向量和输出样本向量;goal为网络的目标误差,默认值为0;spread为一扩展常数,默认值为1.0;MN为神经元个数的最大值;DF为训练过程的显示频率。并利用sim()函数来对神经网络进行仿真。
算法仿真与分析
4.1 数据预处理
仿真中,使用的实验数据来自广州某城市快路的实测数据,采集时间为2007年1月8日一2008年3月6日。首先对数据进行预处理,剔除交通事件中对交通异常状况影响比较小的事件,只考虑正常影响交通流的事件,这样可以更加合理地证明RBF神经网络算法的有效性。
一般情况下,需对样本数据进行归一化(正则化)处理,这样可以使分散、跨度大的样本数据跨度缩小,以便进行建模和仿真。使用命令normalizing可以把数据归一化到[0,1]之间。故对采集的时间、流量及占有率归一化处理,通常取流量q=2000辆/h车道为“1”来对流量这一较大数值进行归一化处理。
对处理后的508组数据进行分组,取前280组有无事件发生数据作为RBF神经网络算法的训练数据,后228组有无事件发生数据作为验证数据。
4.2 仿真过程及结果分析
在Matlab中,RBF网络训练的基本原理是:隐层神经元从0个开始训练,通过检查输出误差使用网络自动增加神经元,训练样本每循环计算一次,就使用网络产生最大误差的训练样本作为权值向量产生一个新的隐层神经元,然后重新计算,直到误差达到要求或最大隐层神经元数为止。取目标值goal=0.01,spread=1.0,MN=20,DF=25,通过神经网络函数net=newrb(P,T,goal,spread,MN,DF)仿真后,得到一个有10个隐层神经元的网络模型。
当RBF神经网络训练完成后,通过函数Y1=sim(net,P1)对该网络模型的上述实测样本数据进行拟合。其中P1和Y1分别为验证数据的输入样本和网络输出。
实测样本数据和网络训练输出拟合曲线如图3所示。
图3 实测样本输出拟合曲线 图4 RBF神经网络的误差变化曲线
经上述仿真知,RBF网络训练的均方误差为MSE=0.40874/1e-010,拟合的均方误差为MSE=0.00955138。由图4的误差变化曲线可以看出,当训练至第38步的时候,网络模型已经满足精度要求。
可见,验证结果和训练结果能很好的拟合。交通异常事件自动检测算法判别的可能结果包括:无异常事件正确检测、有异常事件正确检测、无事件错误报警和有事件漏检。其中后两种属于误报。
对算法进行评价的三个指标:误报率、检测率和平均检测时间的训练检测结果如表1所示。
表1 RBF神经网络性能指标
检测率(DR)/%
误报率(FAR)/%
平均检测时间(MTD)/Min
96.36
4.78
0.62
使用RBF神经网络对城市快速路交通异常事件自动检测,通过实测数据作为样本数据训练,训练结果表明RBF神经网络具有很高的检测率和较低的误报率。
结束语
到目前为止,在AID检测算法中并没有一种算法完全优于其它算法,不同的算法在不同的条件下各有优劣。神经网络算法不需要人为建立事件检测模型,不需要人们自己去分析城市快速路上发生事件和不发生事件时交通流各有什么特点,而只需选定学习样本数据格式和人工神经元网络学习时的某些参数,就可让神经网络自动学习,从而避免了传统算法因人为建立的模型与实际情况不符导致检测不准确的情况。根据大量实测数据进行网络训练,实际数据与仿真结果的比较证明,建立的RBF神经网络拟合精度较高,对于其他形式的交通异常事件检测具有一定的参考意义和实际应用价值。
参考文献
[1] Lindley J A.Quantification of urban freeway congestion and analysis of remedial measures[R].Federal Highway Administration,W ashington D C,1986.
[2] 于勇,邓天明等.一种新的快速路交通事件综合检测算法[J ] .公路与汽运.2009 ,1 :34 - 37.
[3] 沈晓蓉,王川久.基于实测数据评估交通事件检测中神经网络应用性的研究[J ]. 公路交通科技. 2005,22 (9): 127-129.
[4] JIANG Zifeng. Macro and micro freeway AID method based on image processing[A ]. IEEE ITS Conference[C ]. Boston, 1997.
[5] 余勇.快速路交通事件自动检测算法的研究与实现[D] .北京:北京交通大学. 2008.
[6] 郑建湖,陈宏,董德存. 快速路交通事件自动检测系统及算法[J ]. 计算机测量与控制. 2006, 14 (9): 1143-1145.
[7] 刘智勇,赵晓芳. 基于改进的RBF神经网络的高速公路交通事件检测[J ]. 公路交通科技. 2008,25 (11): 119-122.