【回归预测-PNN分类】基于粒子群算法群优化概率神经网络算法实现空气质量评价预测附matlab代码

 1 内容介绍

针对空气质量级别的影响因子较多,存在实时性、非线性和随机变化的特点,提出一种基于频率粒子群优化概率神经网络的算法(BAPSO-PNN)来对空气质量状况进行评价。PNN网络光滑因子(spread)的取值直接影响到评价的精度和运算速度。文章利用改进粒子群算法能够有效调节全局和局部搜索平衡性的优点,对spread参数进行优化,从而建立BAPSO-PNN算法,并从数据分析的角度来对空气质量状况进行评价,最后与经典算法PSO-PNN的仿真结果进行对比。结果表明,BAPSO-PNN算法具有较高的评价精度、运算和收敛速度,具有较高的实际应用价值。

随着国家现代会、工业化的推进及人们生活水平的提高,空气质量的好坏逐渐成为人们关注的焦点之一。准确合理地对空气质量状况进行评价和预测,为政府制定策略和人们作出生活规划提供建议具有重要意义。

目前,国内外很多学者已经提出很多关于空气质量评价的方法,主要的评价方法有灰色聚类关联分析法、模糊综合评价法、主成份分析法、综合指数评价法等传统方法[1-3],这些评价方法基本上都是依靠着分级标准限度值来判断空气质量状况,并且在评价时都要事先假定和主观设定一些参数,如空气质量指数评价法[4](Air Quality Index,简称 AQI)以及李祚泳[5-6]在此基础上提出的各种指数评价法等。这些传统的方法一方面主观性太强,另一方面易忽略或过分强调主要污染指标在空气质量评价中的作用,导致在评价时各个指标的影响相互抵消或者重复累积,往往使评价结果与事实不符。

与此同时,因人工神经网络(Artificial Neural Network,简称 ANN)的研究是从人脑生理结构出发来研究人的智能行为,模拟人脑信息处理的功能,具有很强的鲁棒性、记忆能力、非线性映射能力以及强大的自学习能力,能够有效的解决非线性、高度不确定的问题,所以神经网络逐渐被众多学者所喜爱并在空气质量评价中得到充分应用[7-9]。但在之前的空气质量研究主要两方面的问题,一是评价因子过少,往往得不到评价指标的全部信息,二是智能算法在运用时容易陷入“早熟”和局部最小值点及神经网络参数选择科学性不强等缺点。

针对以上分析,本文从数据统计分析的角度结合智能算法对空气质量状况进行评价。由于影响空气质量的因子众多主要有SO2、NO2、TSP、CO、O3、PM2.5等6种[10],具有复杂性、非线性、多变性以及各个因子之间的错综复杂关系等特点[11],在研究他们与空气质量状况之间的影响关系时,可能存在多重共线性、过分强调或者降低某一因子的作用,评价结果产生误差,达不到理想效果,因此对自变量的筛选十分必要。

本文通过引进蝙蝠算法的“回声定位”思想,赋予粒子每一个粒子不同的频率进行定位,用以提高粒子的局部搜索能力,以此调节PSO算法全局搜索和局部搜索的平衡能力,能够有效的克服算法迭代后期收敛速度慢、容易陷入局部最优值和“早熟”的缺点,且算法收敛性强。在此基础之上,通过优化由径向基函数网络发展而来的概率神经网络(PNN)中光滑因子,从而提出了一种基于频率粒子群优化概率神经网络(BAPSO-PNN网络)的评价模型,并应用于空气质量状况的预测与评价。此外,在对影响空气质量状况的评价因子自变量进行筛选时,采用多元逐步回归分析法,根据自变量的显著性检验把相关性不强的的变量逐一剔除,确定最优的回归方程,以此消除自变量之间的多重共线性,提高评价结果的准确性。最后结合武汉市天气监测数据进行训练仿真测试,并把BAPSO-PNN算法、PSO-PNN算法以及指数评价模型的训练结果进行对比,仿真结果表明,本文提出的算法训练速度快、结果精度高、误差小,具有较好的鲁棒性,在空气质量预测和评价中具有很高的实际应用价值。

本文是利用蝙蝠的“回声定位[12]”这一思想提出基于频率确定搜索范围的改进粒子群算法(BAPSO),其思路是:在粒子群进化过程中,假设例子是具有回声定位能力的,那么可以赋予每一个粒子不同的频率进行定位,每一个粒子保持向自己及他人学习的状态,在到达一个新位置时,依据脉冲发射率精准定位,提高了粒子的局部搜索能力。它对目标函数信息要求低,问题维数对它的影响较小,表现出了很强的鲁棒性和较高的计算效率。

【回归预测-PNN分类】基于粒子群算法群优化概率神经网络算法实现空气质量评价预测附matlab代码_第1张图片

【回归预测-PNN分类】基于粒子群算法群优化概率神经网络算法实现空气质量评价预测附matlab代码_第2张图片

2 PNN概述

概率神经网络(Probabilistic neural network,PNN)是D.F.Specht博士在1989年首先提出的,是一种基于Bayes分类规则与Parzen窗的概率密度函数估计方法发展而来的并行算法。它是一类结构简单、训练简洁、应用广泛的人工神经网络。在实际应用中,尤其是解决分类问题的应用中,PNN的优势在于用线性学习算法来完成非线性学习算法所做的工作,同时保持非线性算法的高精度等特性;这种神经网络对应的权值就是模式样本的分布,网络不需要训练,因而能够满足训练上实时处理的要求。

PNN网络是由径向基函数网络发展而来的一种前馈型神经网络,其理论依据是贝叶斯最小风险准则(即贝叶斯决策理论),PNN作为径向基网络的一种,适合于模式分类。当分布密度spread的值接近于0时,它构成最邻分类器;当spread的值较大时,它构成对几个训练样本的临近分类器。PNN的层次模型,由输入层、模式层、求和层、输出层共4层组成,其基本结构如图1所示。​

2 仿真代码

function Obj=Objfun(X,p_train,t_train,p_test,t_test)%% 用来分别求解种群中各个个体的目标值%% 输入% X:所有个体的初始spread参数% P_train:训练样本输入% T_train:训练样本输出% P_test:测试样本输入% T_test:测试样本期望输出%% 输出% Obj:所有个体的预测样本的预测误差的范数[M,N]=size(X);Obj=zeros(M,1);for i=1:M    Obj(i)=PNNfun(X(i,:),p_train,t_train,p_test,t_test);end

3 运行结果

【回归预测-PNN分类】基于粒子群算法群优化概率神经网络算法实现空气质量评价预测附matlab代码_第3张图片

【回归预测-PNN分类】基于粒子群算法群优化概率神经网络算法实现空气质量评价预测附matlab代码_第4张图片

4 参考文献

[1]葛考, 时贝贝, 徐康耀,等. 基于BAPSO-PNN神经网络算法的空气质量评价研究[J]. 环境工程, 2015(S1):6.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

你可能感兴趣的:(神经网络预测,算法,回归,分类)