基于模糊神经网络的火灾信号处理设计
2011-08-02王庆晖
王庆晖
(四川泸定县公安消防大队,四川甘孜626100)
火灾监控系统中关于火灾信号处理的结构可分为3层:处理信号层、判断信号层与决策信息层。其中,信号处理层可以将火灾识别的种类分为非火灾源、阴燃以及明火,并由此在大多数场合下可推断出发生火灾的概率;而最后的信息决策层则是根据判断层所输出的信息,利用相应的判断规则以及决策技术将火灾的最终结果决策出来。
1 软件Matlab 7介绍
20世纪80年代,美国的 Math Works公司推出了一款数学软件即Matlab。这款软件是十分高效的,可用于仿真建模、设计算法、设计概念,是让人满意的一种集成环境。数值运算的不断进化,使得它渐渐演变成科学可视化的、各种数字信号处理、系统仿真的通用标准语言。作为三大数学软件之一,其强项就是仿真以及强大的矩阵计算能力。而Matlab的编译器是自给自足的:兼容了Fortran以及C++两大语言;因此,可以说 Matlab是研究者或者工程师用作研究的最佳的语言,而且是最佳的环境以及工具[1]。Matlab通过自我改善,至今为止,已经演变成具有非常强大作用的软件之一。
Matlab 7将文件I/O、数字计算、数据可视化、代码效率、编程环境等方面进行了升级:
(1)开发环境
桌面环境经过重新设计,就多文档界面应用问题提供了访问方法和简单的管理,增强了工作空间浏览器和数组编辑器功能,提高了M文件编辑器的功能,并支持各种格式源代码文件的可视化编辑,如Java,HTML,C/C++等。
(2)编程效率提高
支持创建匿名函数和嵌套函数功能,并增强了注释模块化的功能。
(3)便捷高效的数学运算
支持单精度的数据类型运算,如FFT、线性代数、基本算术运算等,支持整数的算术运算。
(4)可视化的3D和图形
图形在窗体界面上表现出新型化,从图形的窗体上直接产生M代码,方便用户做完绘图,并为观测手段提供了丰富的数据。
(5)外部接口和文件I/O
新增加了文件I/O,让MAT文件具备了数据文件快速I/O 的能力,并支持 Unicode,FTP,SOAP,VBS,COM 编码。
动态交互式系统研究、模拟及建模的图形环境,是嵌入式系统研究的基本环境。
2 信号处理层
火灾的发生后,火情发展千变万化,在这个过程中还伴随CO气体浓度变化、烟雾产生以及温度升高等特征变化。本文由CO浓度、感烟和感温3种传感器测查各现场。鉴于信号的范围是根据干扰源的变化而变化的;因此,要对收集到的信号进行预处理,包含放大、整形滤波等[2]。在输入神经网络和模糊控制器之前,还要对信号数据进行归一化处理。
式中,y′为预处理数据;y 为样本数据;ymin,ymax分别为样本数据的最小值和最大值。
3 处理模糊控制的火灾信号
模糊控制器设计包括方面:① 确定模糊控制器的输出变量和输入变量;② 设计控制器结构;③ 明确隶属度函数;④ 设计流程方式;⑤ 将控制方式进行清晰化或模糊化。具体流程如图1所示。
图1 设计模糊控制器的流程
3.1 输入量的模糊化
在启动模糊化运算时,需要尺度来变换输入量,将尺度变换到一个适合的区间。如一个炉子的温度是850℃时,可将其变成为语言的数值,用高、中、低3种方式表示。通常情况下,操作以一个物理量分为负大(NL)、负中(NM)、负小(NS)、零(ZE)、正小(PS)、正中(PM)、正大(PL)7级变量。语言值需要与每一个模糊子集一一对应,常采用梯形、三角形或其他形状的基础图形作为其函数[3]。三角形属于非常容易计算的函数,其图形非常简单,故得到了广泛使用,其隶属函数图如图2所示。
隶属函数解析式为
图2 三角形隶属函数图
式中,μ为模糊控制器输出的隶属度函数;a为模糊集的中心;b,c分别为模糊集的2个端点。
系统采用是三角形隶属函数。根据火灾发生时情况,将CO、烟雾的浓度以及环境中的温度这三者的信号表示为无火情,火情可能性小和火情可能性大。
3.2 创建推理法则
在推理过程中,设计规则库时,应确定控制规则的数目和语言的变量级数,并正确地建立规则形式[4]。
模糊控制规则是对系统控制经验进行的概括总结,是控制器设计最为重要的依据之一,它对控制系统有着非常大的影响。所以,制定一套科学、合理的规则就显得尤为重要。在创建相关规则时,必须将控制规则的特点考虑在内。
从以上模糊控制的规则要求可以系统地得出模糊规则。
3.3 反模糊化
有各种方法可以进行去模糊处理,其中最常用、简单的有加权平均法、中位数法和最大隶属度法[5]。其判断方法为
式中,u′为模糊规则输出;μc(ui)是对应用的第i个规则的输出隶属函数;ui为模糊集中的离散点;m为规则数。
3.4 基于模糊控制的火灾信号处理结果分析
从信息角度分析,模糊的辨识是非常规则型的一类权威型的系统。模糊逻辑可以在火灾探测中被采纳,需要建立非常规范的传输关系库。本文传输对应的信号都是指在传感器模糊化后的,而传输中输出所对应的是发生火灾的概率为多大。整个算法的重点是建立1个非常规范的规则库。影响火灾的因素很多,受不同燃烧的环境、燃烧物质等因素的影响,人们无法从现有的资料中去总结出相关的规律及其函数。然而模糊技术最为重要的一点就是确立模糊的规则[6]。只有当规则精准、覆盖全面,才能识别出正确的结论。所以,仅依靠模糊逻辑,理想的辨识结果是无法达到的。
4 神经网络火灾信号的处理
神经网络搭建的方式比较多样,根据目前最流行的方法大致可分为反馈、前向的网络。多层前向网络使用较频繁,最常见的是径向基函数(Radial Basic Function,RBF)神经网络和误差反向传播前馈(Backpropagation,BP)神经网络模型,此外,还有一种是在这两者基础上经过多次改进的模型[7]。
常见的BP网络包含了神经网络理论中最精华的部分,因为其可塑性强、结构简单,故在数据压缩、信息分类、模式识别及函数逼近等领域被广泛应用。
BP算法步骤如图4所示。
图4 BP神经网络算法流程图
BP算法的缺陷包括:① 容易形成局部极小而无法达到全局最优;② 由于训练次数多导致收敛速度减慢,学习效率下降;③ 选取隐节点缺少理论作为支撑;④ 在锻炼时忘记老样本、学习新方式的现象频出。
优化BP算法的方法可分为网络结构调整、权值调整等。但是使用最多的包括:①Lcvcnberg-Marquart算法;② 共轭梯度算法;③ 学习速率调整;④ 加入动量项。除了改进算法外,通过调整误差、改变网络结构等,也可以加快BP算法的收敛速度[8]。
设计BP网络过程如下:① 输出层和隐层间的权值为W2,而隐层和输入层间的权值为 W1,第3层为输出层,第2层为隐层,第1层为输入层;② 归一化后的CO的浓度、烟雾浓度和温度为输入向量,输出向量为明火、无火、阴燃的概率,其取值范围为0~1;③ 双曲正切的S型的传递函数为隐藏激活函数,而输出的相关函数为S型对数函数;④ 训练函数分别选定Levenbeg Marquadt BP训练函数、准牛顿函数以及梯度下降函数来锻炼;⑤ 按照经验可将隐层结点数设为7~13,并通过比对来选择最为合适的;⑥ 网络结构是3层前向的网络,用BP算法计算。
对隐层神经元数目进行优化是极为困难的问题,设计者一般需要根据自身的经验及多方面的实验来选择最终的数目;因此,用理想数学表达式表示是不可能的。但是,隐层神经元的数目、传输相关单元的数目、问题的要求都应该有着直接或间接的影响,最优的一个隐单元数一定隐藏在这其中。对隐单元数作最优选择时可参考。
式中,m为输出单元数,n为输入单元数;n1为隐单元数。
式中,k为样本数;若i>n1,则Cini=0。
理论上,最佳的连续函数逼近是RBF网络。RBF有较好的泛化能力,只需改变少量的权值以及节点[9],学习会比一般的BP算法提升数千倍的速度,更容易掌握和了解新的数据和资料,其收敛性也比BP网络好,可以得到最优解。
5 控制与网络的有机合并
模糊逻辑最习惯使用的运算法则被称之为最大、最小规则,如果使用最大、最小法则就有可能丢失了部分信息,然而这种运算对于抓住相关的主要信息并且迅速做出回应或处理是十分有利的[10]。因为权重是可以用学习来更改相关数值的量,起到增加数据获取以及存储的作用。
将实现高级智能作为最终的发展方向,把模糊控制技术以及人工神经网络相辅相成地融合在一起,以弥补其中不足,是研究者们值得研究并且完善的主要目标。
依据神经网络连接、模糊系统的运用的方式及相关的使用功能,将两者合并的方法大致可分为并联型结合、松散型结合等5种[11]。
5.1 采用模糊神经网络的系统
3种不同的探测器从不同的角度探测火灾的相关信息,并将测量到的相关信号作为火灾信号的警戒信息,为探测火灾提供了充实的依据;为进一步提升响应时间的灵敏度和可靠性,分别将输入信号送入神经网络和模糊系统,再经过模糊逻辑判断后输出。实现框图如图5所示。
图5 模糊神经网络火灾信号的处理框图图示
5.2 信息决策层
根据神经网络系统、模糊控制系统得出的结论,通过系统的分析并且使用一定的模糊逻辑进行判定,得到最后目标是信息决策层主要的任务。神经网络系统输出明火的概率设为m1,阴燃火的概率设为m2,无火的概率设为m3,以及模糊控制器所得到的火灾概率这几者存在一定的冲突。不难得到以下结论:当神经网络判断为无火m3并且模糊逻辑传输出的信息,火灾概率k>0.6时,可以确定有火灾出现;可是,当神经网络认为火灾是非火灾源而且模糊逻辑所传输的火灾概率k>0.3时,就难以判断是否出现了火灾[12]。由于得到的实际火灾数据较少,无法代表所有的火情,再加上神经网络的泛化能力有限,对于模糊逻辑控制器的规律的了解也不够深入。同时,模糊神经网络输出当做判定火灾的依据的标准还有明显的局限性,故往往是将神经网络系统输出明火的概率m1与模糊逻辑所传输的火灾概率k再次融合,并结合人们的经验判断,最终得到火灾概率。
如果把神经网络输出的无火概率m1,阴燃火概率m2,明火概率m3以及模糊控制器所推断的火灾概率0当做模糊逻辑判决进行分析并且输入。其判定的标准可规定如下:
当m3≥0.6,且0.3≤k≤0.6,判断为延时t s再进行判断;
当m3≥0.6,且k≥0.6,则可以判断为明火火灾;
当0.3≤m1≤0.6,且k≥0.6,判断为延时t s再进行判断;
当m2≥0.6,且k≥0.3,判断为阴燃火火灾;
当0.3≤m2≤0.6,且k≥0.3,判断为延时t s再进行判断;
当m2≥0.6,且k≤0.3,判断为延时t s再进行判断;
当m1≥0.6,且k≤0.3,则判断为无火灾发生;
当m1≥0.6,且k≥0.3,判断为延时t s再判断。
6 结 语
本文阐述了火灾监控的相关系统及火灾相关信号处理系统的3个层面上的结构,其中对于信号的判断层进行详细地分析介绍,利用模糊系统及人工神经网络依次对处理层进行相关的预处理,然后传输相关的信号作为火灾判断的依据。提出了决策层中对神经网络输出用模糊逻辑的推理系统及采用模糊逻辑系统的输出方式,对模糊逻辑进行再次推理分析,最终无论推断出何种结论,利用延长t s,再次采集相关的火灾信号的方式来获得最有说服力的结论。
[1] 李 峰,田继东,杨冬永.火灾早期探测技术的发展及其展望[J].机械管理开发,2008,18(12):62-63.
[2] 许 东,吴 铮.基于 MATLAB6.X的系统分析与设计——神经网络[M].2版.西安:西安电子科技大学出版社,2002.
[3] 徐金明.MATLAB实用教程[M].北京:清华大学出版社,2005.
[4] 王 娜,徐风荣,刘海龙.火灾探测的模糊神经网络数据融合技术[J].控制工程,2007,23(5):44-49.
[5] 刘 维.精通 MATLAB与 C/C++混合程序设计[M].北京:北京航空航天大学出版社,2005.
[6] 赵玉宝.火灾报警技术分析[J].消防技术与产品信息,2009,17(2):38-40.
[7] 王沐然.MATLAB与科学计算[M].北京:清华大学出版社,2008.
[8] 马伟明,秦科雁.极早期火灾智能预警系统的分析研究[J].消防科学与技术,2009,34(3):33-36.
[9] 张国良.模糊控制及其 MATLAB应用[M].西安:西安交通大学出版社,2007.
[10] 谷建荣,社成宝.模糊控制技术在模拟量火灾报警系统中的应用[J].原子能科学技术,2000,34(5):439-444.
[11] 罗云林,朱瑞平.基于数字图像处理的火警监测系统研究[J].辽宁工程技术大学学报:自然科学版,2002,21(6):754-756.
[12] 陈 涛,袁水宏,范维澄.火灾探测技术研究的展望[J].火灾科学,2001,2(10):108-110.