动态加权综合评价.灰色关联度分析.BP神经网络模型

大气污染预报问题

摘要

本文针对大气污染问题,采用动态加权综合评价方法建立了合理的空气质量评价模型,同时,采用灰色关联度分析方法和BP神经网络模型较好地研究了空气质量和气象参数之间的关系。

问题一中,考虑到污染物浓度这一评价指标的“质的差异”和“量的差异”,采用动态加权综合评价方法建立评价模型。首先对评价指标数据进行归一化处理,然后选取偏大型正态分布函数作为动态加权函数建立评价模型,从而对评价指标每天的观测值进行排序,最后用决策分析中的Borda数方法对四个城市的空气质量综合排序。得到的最终排序结果为:空气质量最差的是B城市,其次是C城市,排在第三位是D城市,而A城市的空气质量最好。

问题二中,对于空气质量与气象参数关系的问题,采用灰色关联度分析方法和BP神经网络模型进行探讨。首先,通过灰色关联度分析确定了大气污染物浓度与气象参数强弱主次关系,然后针对其复杂非线性关系建立BP神经网络预测模型,预测2009年7月26日至30日的污染物浓度。最后用实际值对预测值进行了误差分析,结果表明预测值与实际值的误差较小,即BP神经网络模型的预测值具有较高的精度。 本文最大的特色是采用了动态加权综合评价方法建立评价模型,增大了评价结果的客观性,比定常加权模型更科学合理。其次,鉴于空气质量与气象参数复杂的非线性关系,建立了BP神经网络模型,较好地讨论了大气污染物浓度与气象参数的关系,经过检验分析知此模型是解决非线性问题的有力工具。

关键词:动态加权综合评价、灰色关联度分析、BP神经网络模型、MATLAB

一、问题提出

大气是指包围在地球外围的空气层,是地球自然环境的重要组成部分之一。人类生活在大气里,洁净大气是人类赖于生存的必要条件。一个人在五个星期内不吃饭或5天内不喝水,尚能维持生命,但超过5分钟不呼吸空气,便会死亡。随着地球上人口的急剧增加,人类经济增长的急速增大,地球上的大气污染日趋严重,其影响也日趋深刻,如由于一些有害气体的大量排放,不仅造成局部地区大气的污染,而且影响到全球性的气候变化。因此,加强大气质量的监测和预报是非常必要。目前对大气质量的监测主要是监测大气中SO2、NO2、悬浮颗粒物(主要为PM10)等的浓度。

附件一给出了城市A、B、C、D从2009年6月1日至2009年7月25日测量的污染物含量及城市A的气象参数的数据;附件二给出了城市A从2009年7月26日至2009年7月30日测量的污染物含量及气象参数的数据。请解决下面两个问题:

(1)建立由污染物浓度评价空气质量的数学模型,然后利用附件一中的数据对四个城市的空气质量进行排序。

(2)分析城市A的空气质量(指SO2、NO2、PM10的浓度)与气象参数之间的关系,并利用附件二中的数据进行检验。

二、基本假设

1、假设评价空气质量的各指标间相互作用关系忽略不计; 2、假设空气质量仅与附件中的四个气象参数有关;

3、假设题中数据为每天的统计平均值,能客观反映当天空气污染物浓度的实际情况; 4、假设在预测模型中,在未来一年没有发生重大自然突变;

三、符号说明

四、问题分析

大气污染问题愈加严重,加强大气质量的监测和预报十分必要。问题中要求解决两

个问题:一是建立由污染物浓度评价空气质量的数学模型,据此对四个城市的空气质量进行排序;二是需要分析空气质量与气象参数之间关系,并利用数据检验分析。 ⒈针对问题一,查阅国标(GB 3095-1996)规定,环境空气质量标准分为三级。每一等级对每一项指标都有相应的标准值,且同一等级的空气在污染物的含量上也有差别。这种既有“质的差异”又有“量的差异”的问题可采用动态加权评价方法建立评价模型,并利用决策分析中的Borda函数方法确定最终的排序方案。

⒉针对问题二,通过观察附件一、二中的数据可知,需要利用附件一中数据建立预测模型,并用问题二中数据检验分析。故可先利用灰色关联度分析方法讨论四种气象参数分别对三种污染物浓度的影响程度,为了进一步讨论空气质量与气象参数的关系,建立BP神经网络预测模型,并利用附件二中数据检验分析。

具体各问问题分析见本文(五)。

五、模型的建立与求解

5.1 问题一模型建立与求解 5.1.1 问题一的分析

问题一要求建立由污染物浓度评价空气质量的数学模型,并对四个城市空气质量进行排序。查阅国标(GB 3095-1996)规定知,环境空气质量标准分为三级,每一个级别对每一项指标都有相应的标准值(相关数据见表1)。也就是说对于每一个评价指标(即

SO2、NO2、PM10的浓度),既有同级别的差异,同级别又有不同量值的差异。对于这

种既有“质差”,又有“量差”的问题,采用定常加权法显然是不合理的,故合理有效地方法是动态加权综合评价方法。

表1:国标GB 3095-1996中3个主要项目标准限值 (单位:mg

m

3

5.1.2 问题一模型的建立

⒈评价指标的规范化处理

因为评价指标可能有极大型的、极小型的、中间型、或区间型四种情况,且可能各有不同的量纲,故需要对不同类型的指标变换成统一的、无量纲的标准化指标。

1°评价指标类型的一致化处理

通过判断可知SO2、NO2、PM10的浓度这三类指标均为极小型指标,即总是期望指标的取值越小越好。故在此不需要将进行指标类型一致化处理。

2°评价指标无量纲化处理

一般来说,数据的无量纲化处理有标准差方法、极值差方法和功效系数方法等。在此,选取极值差方法对三类指标进行标准化处理。处理方法为:

 xij

1i55

xijmjMjmj

(i1,2,,55;j1,2,3) (1.1)

[0,1]是无量纲的指标观测值。经过此其中Mjmax{xij},mjmin{xij}(j1,2,3),则xij

1i55

处理我们可以得到评价指标经标准化处理后的三级区间。 ⒉动态加权函数的确定

根据空气质量问题的实际问题,各项指标xi对综合评价的影响比较符合随着类别

pi(i1,2,3)的增加呈现先缓慢增加,中间快速增长,最后平缓增加趋于最大。于是不妨

选取呈正态分布曲线的偏大型正态分布函数作为动态加权函数,即:

当xi时,0,

2

xi wi(x) (1.2) i

,当xi时,1e

其中i在这里取指标xi的第一级浓度标准区间的中值,即i(b1(i)a1(i))/2,i由

(i)

wi(a3)0.9(1i3)确定。

由标准化处理后的实际数据经计算可得10.1,20.335,30.1,

10.5341,20.4492, 30.5341,则代入上式可以得到SO2、NO2、PM10三项指标的动态加权函数。

图1:加权函数的图像

⒊建立综合评价模型

为了给每次的检测值进行排序,在基于上述模型的同时,取综合评价模型为各评价指标的动态加权和,即:

X

w(x)x (i1,2,3) (1.3)

i

i

i

i1

m

由此综合评价指标函数可以求出每个评价对象的N个综合评价指标值

Xk(j)(k1,2,,n;j1,2,,N),且据此大小排序,可得到n个评价对象的N个排序方

案。

利用决策分析中的Borda函数方法来确定综合排序方案。若在第i个排序方案中排在第j个被评价对象后的个数为Bi(uj),令Bi(uj)nk,则被评价对象uj的Borda数为

B(uj)

B(u)

i

j

i1

m

(j1,2,3,4) (1.4)

根据此式的计算结果大小进行排序,便可得到n个被评价对象的总排序结果。

综合以上的数据处理、权的求法及排序函数的数学模型,建立以下由污染物浓度评价空气质量的数学模型:

xijmjx,(i1,2,,55;j1,2,3)ij

Mjmj

当xi时,0,2

xiwi(x)i ,当xi时,1e

m

Xw(x)x,(i1,2,3)

iii

i1m

B(u)B(u)(j1,2,3,4)

jij

i1

5.1.3 问题一模型的求解与分析

1.算法

(1)运用极值差法,将数据先归一化化成可比较的[0,1]区间上的数值 (2)根据偏大型正态分布函数,确定三类指标的动态加权函数

(3)i从1开始到3,k从1到4,j从1到55,对(2)得到的新数值矩阵进行加权求和,得到不同的i的分数

(4)对分数进行从大到小的排序,得到4个评价对象的55个排序方案。 (5)利用Borda函数计算4个被评价对象的Borda数,并根据Borda数从大到小

进行排序,得到最终排序结果

2.求解及分析 (1)求解

运用MATLAB软件编程(见附录1)对各次检测值进行加权求和,得到各综合评价指标值:部分结果见下表;

根据表2的结果进行排序得到55个排序方案后,利用Borda函数编程计算可得A、B、C、D的Borda数及总排序结果如表3 所示

的是B城市,其次是C城市,排在第三位的是D城市,而空气质量最好的是A城市。

5.2 问题二模型建立与求解 5.2.1 问题二的分析

问题二要求解决以下两个问题:一是分析城市A的空气质量与气象参数之间的关系,二是利用附件二中的数据进行检验分析。

根据常识,大气污染物与气象条件有着紧密联系,特别是风速对其影响非常明显,而大气压、温度、湿度对大气污染物浓度的影响并不明确。故可以通过灰色关联分析方法分析大气污染物SO2、NO2、PM10的浓度与气象参数之间的强弱主次关系。 通过观察附件一和附件二中数据的关系,可知需要建立空气质量与气象参数相关的预测模型。而空气质量与气象参数之间存在着复杂的非线性关系,对于非线性关系研究,可以通过神经网络模型,二次多项式逼近等方法解决。故在此刻建立BP神经网络预测模型,并利用附件二中数据对预测值进行检验分析。 5.2.2 问题二模型的建立

⒈灰色关联分析方法模型的建立

灰色关联度分析法是灰色系统理论中一种定量描述因素间发展势态的相似或相异程度的量化比较方法。它的基本思想是根据序列曲线几何形状的相似程度来判断其联系是否紧密。一般地,曲线越接近,相应序列之间的关联度就越大,反之就越小。灰色关联度分析法的步骤与模型如下:

1°分别选取大气污染物SO2、NO2、PM10的日平均浓度数列为参考数列,气象参数数列为比较数列,其中参考数列记为x0(k),比较数列记为xi(k)。

2°由于气象参数数列中变量的量纲不同,为消除量纲对分析结果的影响,需要进行无量纲化处理。常用的有标准化、初始化、极差法、最大值化等,在此也选用极差法进行处理,如下:

 令xij

xijmjMjmj

(i1,2,,55;j1,2,3,4) (2.1)

[0,1]是无量纲的指标观测值。 其中Mjmax{xij},mjmin{xij}(j1,2,3),则xij

1i55

1i55

3°计算关联度系数,公式为

(k)

minmin|

i

ki

i

x(k)x(k)|maxmax|x(k)x(k)| (2.2)

|(k)(k)|maxmax|(k)(k)|

i

i

k

i

i

k

i

其中:|xi(k)x0(k)|为x0(k)和xi(k)第k个点的绝对误差;minmin|xi(k)x0(k)|为

i

k

两级最小差;maxmax|xi(k)x0(k)|;为分辨率,01,一般取0.5;越大,

i

k

分辨率越小,越小,分辨率越大。

4°计算关联度,其公式为

其中,ri即为xi对x0的关联度

⒉BP神经网络进行预测模型的建立

通过上述灰色关联度分析,明确了大气污染物SO2、NO2、PM10的浓度与气象参数之间的强弱主次关系。但是大气污染物浓度与气象参数存在复杂的非线性关系,故在此建立BP神经网络模型进一步研究。

本文采用的是多层感知器的误差反向传播算法(Error Back Proragation),即BP算法[3]。其基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出不符,则转入误差的反向传输阶段。误差反传是将输出误差以某种形式通过隐层向输入曾逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,该误差信号即作为修正各单元权值的依据。信号正向传播与误差反向传播的各层权值的调整是反复进行的,直至网络输出的误差减少到可接受的程度,或是进行到预先设定的学习次数,结构图如下。

r

i

1nnk1

(k) (2.3)

i

符号说明:

X(x1,x2,x3,x4)T 输入变量向量组(四个变量)

Y(y1,y2,...yi,...ym)T 隐层输出变量(m为隐变量个数)向量组

H(h1,h2,h3)T 输出层输出向量组(大气污染物浓度指标) D(d1,d2,d3)T 期望输出向量组(为常向量组) W(w1,w2,...wi,...wm)T 输入层到隐层之间的权值矩阵 V(v1,v2,v3)T 隐层到输出层之间的权值矩阵

(0,1) 比例常数,表示学习速率

用X(x1,x2,x3,x4)T表示四个气象参数变量(大气压、温度、湿度、风速),隐层输出变量设为7个,用Y(y1,y2,y3,y4,y5,y6,y7)T表示,输出层输出向量(大气污染物浓度)用H(h1,h2,h3)T表示,而期望输出为常向量D(d1,d2,d3)T

根据BP神经网络原理,对于输出层,有

hkf(netk) k1,2,3

对于隐层,有

netkvjkyj k1,2,3

j1

m

(2.4)

yjf(netj) j1,2...m

netjwijxi j1,2...m

i1

m6

(2.5)

其中f(x)

1

(2.6) 1ex

5.2.3 问题二模型的求解

5.2.3.1灰色关联度分析模型求解

首先,将0.5代入公式,用MATLAB编程(见附录3 )可计算得到大气污染物SO2、

NO2、PM10浓度与各气象要素的关联系数,部分结果见表4

表 4 :大气污染物与各个气象参素的关联系数

然后将表4 中的关联系数代入(2.3)式计算得大气污染物SO2、NO2、PM10浓度与各气象要素的关联度,如下表

表 5:大气污染物浓度与各气象参数的关联度

x

1

x

2

x

3

x

4

r(SO2) 0.62183 0.70560 0.63975 0.66509 r(NO2) 0.64906 0.70104 0.66289 0.63107 r(PM10) 0.62654 0.69898 0.67028 0.69972

通过对表5中的数据分析可知:

影响SO2浓度的气象参数排序为:温度>风速>湿度>大气压 影响NO2浓度的气象参数排序为:温度>湿度>大气压>风速 影响PM10浓度的气象参数排序为:风速>温度>湿度>大气压

综上,可知四种气象参数对大气污染物SO2、NO2、PM10浓度的影响程度不同,其中对

SO2和NO2影响程度最大的是温度,而风速则是影响PM10浓度的主要因子。

5.2.3.2 BP神经网络模型求解 ⒈算法

Step1:初始化。对权值矩阵W、V赋随机数,将样本模式计数器p和训练次数计数q置为1,误差E置0,学习率设为01内的小数,网络训练后达到的精度Emin设为一个正的小数。 Step2:输入训练样本对,计算各层输出。用当前样本对向量数组X、D赋值,并计算Y、H各分量。

Step3:计算网络输出误差。共有6对训练样本,网络对于第i个样本具有误差

E

i

总输出误差(均方根误差)为

ERME

Step4:计算各层误差信号

koj

y

EEhk

(dkhk)hk(1hk)netkhknetk

4EEyj

kovjkyj(1yj)

netjyjnetjk1

Step5:调整各层权值。权值调整量为

E

wjk j1,2...,4; k1,2,,m

wjk

E

vjk j1,2...m; k1,2,3

vjk

Step:6:检查是否对所有样本完成一次轮训。若p4,计数器p,q加1,返回Step2,否则进行下一步。

Step7:检查网络总误差是否达到精度要求。若ERMEEmin,训练结束,否则E置0,p置1,返回Step2 ⒉结果

使用Matlab编程计算(程序见附录4),训练后的神经网络模拟的指标与实际数据几乎完全吻合,最终得到的SO2、NO2、PM10浓度预测值如下:

5.2.4 问题二结果的分析及验证

由于通过神经网络模型预测出了2009年7月26至2009年7月30日的大气污染物浓度,故可通过附录二中这五天的实际值进行检验分析。实际值与预测值对比如下:

表7:SO2浓度实际值与预测值的统计比较结果

表8:NO2浓度实际值与预测值的统计比较结果

表9:PM10浓度实际值与预测值的统计比较结果

图2:误差曲线图

NO2、PM10浓度的预测值与实际值的绝对误差波动不大,从图2中可见5天内SO2、

通过计算得SO2浓度的平均绝对误差为0.0061,NO2浓度的平均绝对误差为-0.004,

PM10浓度的平均绝对误差为0.017。故BP神经网络模型预测值的误差较小,且波动相

对稳定,预测效果理想。而通过图中残差平方和SSE、T检验值以及组内离均差平方和

SSW判断可知此模型的拟合优度较高,预测精度较高。

六、模型的评价与推广

7.1 模型的评价

问题一中,考虑到大气污染物浓度这一评价指标的“质差”和“量差”的关系,采用了动态加权综合评价的方法建立模型,最后利用Borda函数得到了四个城市空气质量的总排序。这一模型不仅充分考虑到了每一因素每一属性的所有“差异”的影响和作用,使得评价结果科学合理;而且增加了综合评价的客观性,与定常加权法相比大大淡化了评价人主观因素的影响。

问题二中,灰色关联度分析模型清晰明了地反映了大气污染物SO2、NO2、PM10的浓度与气象参数之间的强弱主次关系。而BP神经网络预测模型则更进一步对污染物浓度与气象参数间复杂的非线性关系进行了研究,用实际值对预测值检验分析后知该模型精度较高,预测结果理想。但是,BP神经网络模型也存在一定的缺点:隐层节点数需要经过多次尝试;学习速度慢;易于陷入局部极小点。 7.2 模型的推广

问题一中的动态加权综合评价模型不仅可以科学地评价空气质量问题,还可以推广到水质评价问题以及经济、军事等领域的许多综合评价问题,具有广泛的应用价值。

问题二中的BP神经网络模型是目前最为广泛应用的神经网络模型之一,在气象预

报中得到了广泛应用。该模型是一种解决非线性问题的有力工具,可以推广的其他领域应用。但由于BP神经网络模型自身的局限性,在实际应用中需要进行一定的改进和修正,本文中的BP神经网络模型若进行改进效果会更好。

七、参考文献

[1] 中华人民共和国国家标准/环境空气质量(GB3095-1996),http://www.stats.gov.cn/tjsj/qtsj/hjtjzl/hjtjsj1999.htm,1996年 [2] 姜启源等, 《数学模型》(第三版),高等教育出版社,2003年8月 [3] 王庚、王敏生,《现代数学建模方法》 ,科学出版社,2008年2月

[4] 苏静芝等,神经网络在空气污染预报中的应用研究,四川环境,2008年4月 [5] 张德丰,《MATLAB神经网络应用设计》,机械工业出版社,2009年1月

八、附录

8.1 附录清单

附录1:求解问题一的MATLAB程序 附录2:问题一的完整数据结果

附录3:求解问题二中灰色关联度分析的MATLAB程序 附录4:求解问题二中BP神经网络模型的MATLAB程序 8.2 附录正文

附录1:求解问题一的MATLAB程序 首先是求解动态加权函数中的i值

x=[0.6,0.67,0.6]; ca=[0.1,0.335,0.1];

ca1=x-ca./sqrtm((-log(0.1))); 从而求出结果 ca1 =

0.[1**********]000 0.[1**********]000 0.[1**********]000 然后编程求解评价指标值和最后总得分 A=[

0.037 0.031 0.098 0.030 0.032 0.058 0.029 0.028 0.028 0.025 0.034 0.108

0.034 0.027 0.067 0.034 0.032 0.060 0.029 0.024 0.059 0.028 0.028 0.094

0.027 0.025 0.039 0.018 0.028 0.052 0.014 0.020 0.031 0.011 0.023 0.061

0.040 0.035 0.067 0.039 0.042 0.065 0.047 0.033 0.033 0.036 0.045 0.090

0.035 0.030 0.076 0.036 0.041 0.068 0.011 0.036 0.040 0.025 0.039 0.106

0.027 0.021 0.056 0.025 0.030 0.041 0.000 0.000 0.000 0.010 0.025

0.026 0.023 0.047 0.023 0.029 0.048 0.011 0.019 0.024 0.013 0.027 0.081

0.026 0.023 0.061 0.017 0.028 0.050 0.007 0.021 0.037 0.014 0.027 0.070

0.027 0.019 0.051 0.010 0.030 0.034 0.005 0.008 0.015 0.010 0.020 0.050

0.025 0.018 0.038 0.009 0.023 0.024 0.005 0.014 0.011 0.009 0.015 0.037

0.036 0.024 0.061 0.013 0.028 0.031 0.011 0.025 0.019 0.015 0.026 0.061

0.028 0.017 0.055 0.016 0.027 0.034 0.006 0.013 0.017 0.011 0.021 0.062

0.032 0.025 0.050 0.023 0.033 0.042 0.005 0.023 0.022 0.014 0.025 0.060

0.035 0.019 0.049 0.051 0.040 0.046 0.014 0.028 0.029 0.016 0.025 0.061

0.037 0.027 0.074 0.081 0.054 0.052 0.017 0.037 0.034 0.019 0.041 0.082

0.044 0.031 0.128 0.100 0.062 0.094 0.013 0.036 0.077 0.019 0.047 0.136

0.029 0.029 0.102 0.019 0.041 0.071 0.003 0.048 0.067 0.005 0.040 0.111

0.033 0.026 0.085 0.019 0.031 0.059 0.006 0.031 0.060 0.005 0.030 0.094

0.031 0.023 0.095 0.009 0.023 0.054 0.004 0.032 0.053 0.003 0.022 0.078

0.045 0.023 0.129 0.017 0.029 0.084 0.017 0.023 0.057 0.022 0.034 0.158

0.032 0.022 0.105 0.011 0.026 0.066 0.009 0.015 0.050 0.014 0.026 0.123

0.033 0.021 0.068 0.020 0.022 0.047 0.021 0.025 0.029 0.018 0.022 0.085

0.033 0.024 0.075 0.018 0.029 0.043 0.016 0.020 0.028 0.016 0.027 0.071

0.056 0.035 0.100 0.036 0.038 0.048 0.042 0.033 0.033 0.033 0.040 0.125

0.059 0.041 0.101 0.045 0.051 0.089 0.077 0.046 0.054 0.032 0.047 0.118

0.065 0.049 0.148 0.081 0.052 0.127 0.054 0.055 0.084 0.037 0.000 0.157

0.051 0.030 0.068 0.029 0.039 0.052 0.013 0.032 0.054 0.010 0.032 0.079

0.044 0.021 0.101 0.010 0.026 0.081 0.030 0.018 0.062 0.014 0.014

0.066 0.024 0.062 0.011 0.032 0.049 0.017 0.018 0.022 0.017 0.027 0.079

0.035 0.018 0.053 0.008 0.023 0.049 0.008 0.009 0.021 0.009 0.004 0.045

0.052 0.023 0.038 0.046 0.025 0.042 0.019 0.013 0.020 0.024 0.014 0.060

0.045 0.025 0.030 0.056 0.028 0.038 0.025 0.017 0.020 0.023 0.016 0.050

0.057 0.034 0.063 0.061 0.041 0.050 0.063 0.031 0.030 0.019 0.027 0.082

0.076 0.043 0.093 0.094 0.055 0.081 0.030 0.047 0.049 0.027 0.058 0.035

0.073 0.036 0.089 0.000 0.067 0.085 0.020 0.021 0.058 0.020 0.025 0.000

0.056 0.028 0.077 0.000 0.057 0.073 0.009 0.020 0.040 0.013 0.019 0.000

0.070 0.031 0.051 0.035 0.037 0.045 0.031 0.029 0.025 0.024 0.031 0.092

0.049 0.029 0.061 0.019 0.028 0.044 0.013 0.024 0.033 0.008 0.028 0.056

0.034 0.026 0.041 0.019 0.031 0.041 0.004 0.032 0.018 0.007 0.031 0.051

0.037 0.040 0.096 0.038 0.050 0.073 0.013 0.052 0.032 0.020 0.057 0.130

0.026 0.027 0.058 0.028 0.030 0.044 0.000 0.000 0.000 0.012 0.035 0.047

0.023 0.029 0.065 0.066 0.027 0.050 0.011 0.042 0.035 0.009 0.034 0.045

0.034 0.031 0.079 0.091 0.038 0.066 0.023 0.035 0.031 0.028 0.044 0.100

0.022 0.028 0.050 0.071 0.033 0.040 0.003 0.046 0.029 0.004 0.033 0.038

0.032 0.043 0.063 0.049 0.046 0.056 0.011 0.032 0.015 0.017 0.048 0.070

0.033 0.035 0.078 0.011 0.031 0.057 0.006 0.034 0.034 0.005 0.041 0.064

0.024 0.031 0.057 0.004 0.032 0.055 0.004 0.019 0.037 0.003 0.036 0.032

0.029 0.030 0.040 0.006 0.032 0.040 0.004 0.015 0.024 0.004 0.029 0.021

0.024 0.052 0.109 0.010 0.050 0.078 0.004 0.031 0.033 0.006 0.060 0.099

0.022 0.026 0.052 0.027 0.028 0.046 0.003 0.012 0.031 0.013 0.027

0.030 0.043 0.068 0.063 0.045 0.069 0.013 0.049 0.031 0.023 0.056 0.000

0.041 0.037 0.075 0.039 0.036 0.044 0.018 0.037 0.020 0.021 0.047 0.064

0.068 0.036 0.060 0.061 0.031 0.047 0.013 0.038 0.032 0.014 0.038 0.054

0.024 0.028 0.041 0.059 0.022 0.033 0.011 0.018 0.022 0.013 0.022 0.042

0.022 0.025 0.037 0.057 0.021 0.027 0.004 0.018 0.013 0.012 0.018 0.029 ];

ca=[0.1,0.335,0.1];%中值

ca1=[0.5341 0.4492 0.5341];%δ的值

B=[0.2 0.6 1;0.67 0.67 1;0.2 0.6 1];%标准分级 a=size(A,1);%A的行数 b=size(A,2);%A的列数

MX=max(A);%A的每列的最大值 MN=min(A);%A的每列的最小值 f1=1;%B的行变量 f2=1;%B的列变量

for j=1:b%将A里面的值标准化 for i=1:a

A(i,j)=(A(i,j)-MN(j))/(MX(j)-MN(j)); end end

X=zeros(a,4);%建立放置每个城市每天空气质量的值矩阵 for i=1:a%计算每个城市每天的空气质量 h=1; k=1;

flag0=1;%算完每个城市每天的空气质量后,跳到下一个城市(h=h+1) for j=1:b

for flag=1:3

if A(i,j)

X(i,h)=X(i,h); break;

elseif A(i,j)>ca(k)&&A(i,j)

k=k+1;%对应每个中值 f2=f2+1;%对应每个等级值

end end

f1=f1+1;%对应每个属性

k=1;%每循环完一次,跳到第一个中值 f2=1;%每循环完一次,又从第一级开始

if flag0==3%判断是否算完了一个城市每天的空气质量 h=h+1; flag0=1; f1=1; else

flag0=flag0+1; end end end

a=size(X,1);%X的行数 b=size(X,2);%X的列数 h=1;

C=zeros(1,b);%建立总体排序矩阵 for k=1:b%将所有城市总体排序 for i=1:a

for j=1:b

if(A(h)>A(i,j)) C(k)= C(k)+1; else end end h=h+1; end end

附录2:问题一的完整数据结果

附录3:求解问题二中灰色关联度分析的MATLAB程序 A=[

0.037 0.034 0.027 0.04 0.035 0.027 0.026 0.026 0.027 0.025 0.036 0.028 0.032 0.035 0.037 0.044 0.029 0.033 0.031 0.045 0.032 0.033 0.033 0.056 0.059 0.065 0.051 0.044 0.066 0.035 0.052 0.045 0.057 0.076 0.073 0.056 0.07 0.049 0.034 0.037 0.026 0.023 0.034 0.022 0.032 0.033 0.024 0.029 0.024 0.022 0.03 0.041 0.068 0.024 0.022

0.031 0.027 0.025 0.035 0.03 0.021 0.023 0.023 0.019 0.018 0.024 0.017 0.025 0.019 0.027 0.031 0.029 0.026 0.023 0.023 0.022 0.021 0.024 0.035 0.041 0.049 0.03 0.021 0.024 0.018 0.023 0.025 0.034 0.043 0.036 0.028 0.031 0.029 0.026 0.04 0.027 0.029 0.031 0.028 0.043 0.035 0.031 0.03 0.052 0.026 0.043 0.037 0.036 0.028 0.025

0.098 0.067 0.039 0.067 0.076 0.056 0.047 0.061 0.051 0.038 0.061 0.055 0.05 0.049 0.074 0.128 0.102 0.085 0.095 0.129 0.105 0.068 0.075 0.1 0.101 0.148 0.068 0.101 0.062 0.053 0.038 0.03 0.063 0.093 0.089 0.077 0.051 0.061 0.041 0.096 0.058 0.065 0.079 0.05 0.063 0.078 0.057 0.04 0.109 0.052 0.068 0.075 0.06 0.041 0.037

663.73 660.13 668.62 665.63 664.15 669.17 672.15 671.5 663.92 666.15 665.3 664.25 666.82 669.17 668.67 673.52 671.75 675.26 663.89 662.38 659.02 662.81 661.79 663.45 658.96 666.58 668.88 657.65 654.79 659.69 663.71 664.6 664.33 671.08 668.92 667.85 666.42 667.63 665.21 663.5 668.06 671.65 663.48 663.02 665.85 667.27 670.33 667.45 663.92 664.4 666.48 664.03 665 664.27 670.76

21.979 22.167 21.319 20.667 19.063 21 18.479 19 21.042 16.979 21 21.458 20.211 22.063 21.563 24.104 18.854 24.205 20.761 20.289 24.146 18.167 23.208 24.213 28.167 28.625 24.958 24.938 24.083 22.154 22.042 23.467 26.063 28.688 26.292 23.104 25.813 23.208 17.75 25.25 25.125 24.208 26.688 19.708 25.085 24.521 20.063 19.255 25.583 23.917 26.25 28.897 24.896 24.354 20.63

16.458 18.5 17.17 18.708 40.917 41.563 49.563 61.146 47.104 51.813 28 23.375 33.436 34.396 39.563 46.021 76.771 51.667 69.13 22.511 21.104 28.542 24.063 25.277 15.583 21.771 46.167 17.271 15.417 31.282 33.188 30 26.688 27.396 41.771 55.479 26.167 57.333 74.271 43.021 46.229 50.563 32.708 74.188 34.596 54.146 88.208 86.191 63.458 64.792 47.938 30.718 44.521 44.042 55.957

1.958 1.479 1.872 0.938 1.188 1.354 1.646 1.729 2 1.667 2.7 2.417 1.205 1.146 1.208 1.333 1.146 2.026 1.644 1.8 2.438 1.521 1.404 1.149 1.646 1.521 1.563 2.375 1.809 2.359 1.766 1.733 1.167 1.125 1.813 1.354 1.188 1.25 1.021 0.875 1.458 1.563 1.771

1.021 1.149 1.354 0.729 1.277 1.125 1.021 0.896 0.974 1.063

1.646 2.043

]';

%级差法进行量纲化

a=size(A,1);

b=size(A,2);

MX=max(A);

MN=min(A);

f1=1;

f2=1;

for j=1:b

for i=1:a

A(i,j)=(A(i,j)-MN(j))/(MX(j)-MN(j));

end

end

%计算关联度系数

A1=[A(:,1) A(:,1) A(:,1) A(:,1)];

SO2=abs(A(:,4:7)-A1);

A1=[A(:,2) A(:,2) A(:,2) A(:,2)];

NO2=abs(A(:,4:7)-A1);

A1=[A(:,3) A(:,3) A(:,3) A(:,3)];

PH=abs(A(:,4:7)-A1);

p=0.5; %分辨率

MX=max(SO2);

MX=max(MX);

MN=min(SO2);

MN=min(MN);

SO2=(MN.*ones(55,4)+p*MX.*ones(55,4))./(SO2+p*MX.*ones(55,4)) %关联系数 SO21=sum(SO2,1)./55;%关联度

MX=max(NO2);

MX=max(MX);

MN=min(NO2);

MN=min(MN);

NO2=(MN.*ones(55,4)+p*MX.*ones(55,4))./(NO2+p*MX.*ones(55,4)) %关联系数 NO21=sum(NO2,1)./55;%关联度

MX=max(PH);

MX=max(MX);

MN=min(PH);

MN=min(MN);

PH=(MN.*ones(55,4)+p*MX.*ones(55,4))./(PH+p*MX.*ones(55,4)) %关联系数

PH1=sum(PH,1)./55;%关联度

result=[SO21;NO21;PH1]

附录4:求解问题二中BP神经网络模型的MATLAB程序

%输入变量

P=[

663.73 660.13 668.62 665.63 664.15 669.17 672.15 671.5 663.92 666.15 665.3 664.25 666.82 669.17 668.67 673.52 671.75 675.26 663.89 662.38 659.02 662.81 661.79 663.45 658.96 666.58 668.88 657.65 654.79 659.69 663.71 664.6 664.33 671.08 668.92 667.85 666.42 667.63 665.21 663.5 668.06 671.65 663.48 663.02 665.85 667.27 670.33 667.45 663.92 664.4 666.48 664.03 665 664.27 670.76

21.979 22.167 21.319 20.667 19.063 21 18.479 19 21.042 16.979 21 21.458 20.211 22.063 21.563 24.104 18.854 24.205 20.761 20.289 24.146 18.167 23.208 24.213 28.167 28.625 24.958 24.938 24.083 22.154 22.042 23.467 26.063 28.688 26.292 23.104 25.813 23.208 17.75 25.25 25.125 24.208 26.688 19.708 25.085 24.521 20.063 19.255 25.583 23.917 26.25 28.897 24.896 24.354 20.63

16.458 18.5 17.17 18.708 40.917 41.563 49.563 61.146 47.104 51.813 28 23.375 33.436 34.396 39.563 46.021 76.771 51.667 69.13 22.511 21.104 28.542 24.063 25.277 15.583 21.771 46.167 17.271 15.417 31.282 33.188 30 26.688 27.396 41.771 55.479 26.167 57.333 74.271 43.021 46.229 50.563 32.708 74.188 34.596 54.146 88.208 86.191 63.458 64.792 47.938 30.718 44.521 44.042 55.957

1.958 1.479 1.872 0.938 1.188 1.354 1.646 1.729 2 1.667 2.7 2.417

1.205 1.146 1.208 1.333 1.146 2.026 1.644 1.8 2.438 1.521 1.404

1.149 1.646 1.521 1.563 2.375 1.809 2.359 1.766 1.733 1.167

1.125 1.813 1.354 1.188 1.25 1.021 0.875 1.458 1.563 1.771 1.021 1.149 1.354 0.729 1.277 1.125 1.021 0.896 0.974 1.063

1.646 2.043

];

%输出变量

T=[

0.037 0.034 0.027 0.04 0.035 0.027 0.026 0.026 0.027 0.025 0.036 0.028 0.032 0.035 0.037 0.044 0.029 0.033 0.031 0.045 0.032 0.033 0.033 0.056 0.059 0.065 0.051 0.044 0.066 0.035 0.052 0.045 0.057 0.076 0.073 0.056 0.07 0.049 0.034 0.037 0.026 0.023 0.034 0.022 0.032 0.033 0.024 0.029 0.024 0.022 0.03 0.041 0.068 0.024 0.022

0.031 0.027 0.025 0.035 0.03 0.021 0.023 0.023 0.019 0.018 0.024 0.017 0.025 0.019 0.027 0.031 0.029 0.026 0.023 0.023 0.022 0.021 0.024 0.035 0.041 0.049 0.03 0.021 0.024 0.018 0.023 0.025 0.034 0.043 0.036 0.028 0.031 0.029 0.026 0.04 0.027 0.029 0.031 0.028 0.043 0.035 0.031 0.03 0.052 0.026 0.043 0.037 0.036 0.028 0.025

0.098 0.067 0.039 0.067 0.076 0.056 0.047 0.061 0.051 0.038 0.061 0.055 0.05 0.049 0.074 0.128 0.102 0.085 0.095 0.129 0.105 0.068 0.075 0.1 0.101 0.148 0.068 0.101 0.062 0.053 0.038 0.03 0.063 0.093 0.089 0.077 0.051 0.061 0.041 0.096 0.058 0.065 0.079 0.05 0.063 0.078 0.057 0.04 0.109 0.052 0.068 0.075 0.06 0.041 0.037

];

%创建一个BP神经网络,每一个输入向量的取值范围为[0 ,1],隐含层有7个神经 %元,输出层有一个3神经元,隐含层的激活函数为tansig,输出层的激活函数为 %purelin,训练函数为trainc函数,

net=newff([0 700;0 30;0 20;0 2],[7,3],{'tansig','purelin'},'trainbr'); net.trainParam.epochs=2000;%设置训练次数

net.trainParam.goal=0.01;

%设置学习速率为0.1

LP.lr=0.1;

net=train(net,P,T);

P1=[

670.31 665.35 668.56 667.21 676.68

22.521 22 18.93 20.488 22.5

44.208 57.917 72.233 72.65 63.682

1.25 1.542 1 0.932 1.591

];%预测参数

T1=[

0.031 0.021 0.025 0.024 0.026

0.037 0.022 0.034 0.035 0.033

0.047 0.03 0.034 0.035 0.081

];%实际值

T_test=sim(net,P1);%预测值

T_test

T1

%预测值与实际值的误差

for j=1:3

for i=1:5

error(j,i)=T_test(j,i)-T1(j,i);

end

end

error

%绘制误差图

plot(1:5,error(1,:),'-*');

hold on;

plot(1:5,error(2,:),'-+');

hold on;

plot(1:5,error(3,:),'-h');

hold on;

大气污染预报问题

摘要

本文针对大气污染问题,采用动态加权综合评价方法建立了合理的空气质量评价模型,同时,采用灰色关联度分析方法和BP神经网络模型较好地研究了空气质量和气象参数之间的关系。

问题一中,考虑到污染物浓度这一评价指标的“质的差异”和“量的差异”,采用动态加权综合评价方法建立评价模型。首先对评价指标数据进行归一化处理,然后选取偏大型正态分布函数作为动态加权函数建立评价模型,从而对评价指标每天的观测值进行排序,最后用决策分析中的Borda数方法对四个城市的空气质量综合排序。得到的最终排序结果为:空气质量最差的是B城市,其次是C城市,排在第三位是D城市,而A城市的空气质量最好。

问题二中,对于空气质量与气象参数关系的问题,采用灰色关联度分析方法和BP神经网络模型进行探讨。首先,通过灰色关联度分析确定了大气污染物浓度与气象参数强弱主次关系,然后针对其复杂非线性关系建立BP神经网络预测模型,预测2009年7月26日至30日的污染物浓度。最后用实际值对预测值进行了误差分析,结果表明预测值与实际值的误差较小,即BP神经网络模型的预测值具有较高的精度。 本文最大的特色是采用了动态加权综合评价方法建立评价模型,增大了评价结果的客观性,比定常加权模型更科学合理。其次,鉴于空气质量与气象参数复杂的非线性关系,建立了BP神经网络模型,较好地讨论了大气污染物浓度与气象参数的关系,经过检验分析知此模型是解决非线性问题的有力工具。

关键词:动态加权综合评价、灰色关联度分析、BP神经网络模型、MATLAB

一、问题提出

大气是指包围在地球外围的空气层,是地球自然环境的重要组成部分之一。人类生活在大气里,洁净大气是人类赖于生存的必要条件。一个人在五个星期内不吃饭或5天内不喝水,尚能维持生命,但超过5分钟不呼吸空气,便会死亡。随着地球上人口的急剧增加,人类经济增长的急速增大,地球上的大气污染日趋严重,其影响也日趋深刻,如由于一些有害气体的大量排放,不仅造成局部地区大气的污染,而且影响到全球性的气候变化。因此,加强大气质量的监测和预报是非常必要。目前对大气质量的监测主要是监测大气中SO2、NO2、悬浮颗粒物(主要为PM10)等的浓度。

附件一给出了城市A、B、C、D从2009年6月1日至2009年7月25日测量的污染物含量及城市A的气象参数的数据;附件二给出了城市A从2009年7月26日至2009年7月30日测量的污染物含量及气象参数的数据。请解决下面两个问题:

(1)建立由污染物浓度评价空气质量的数学模型,然后利用附件一中的数据对四个城市的空气质量进行排序。

(2)分析城市A的空气质量(指SO2、NO2、PM10的浓度)与气象参数之间的关系,并利用附件二中的数据进行检验。

二、基本假设

1、假设评价空气质量的各指标间相互作用关系忽略不计; 2、假设空气质量仅与附件中的四个气象参数有关;

3、假设题中数据为每天的统计平均值,能客观反映当天空气污染物浓度的实际情况; 4、假设在预测模型中,在未来一年没有发生重大自然突变;

三、符号说明

四、问题分析

大气污染问题愈加严重,加强大气质量的监测和预报十分必要。问题中要求解决两

个问题:一是建立由污染物浓度评价空气质量的数学模型,据此对四个城市的空气质量进行排序;二是需要分析空气质量与气象参数之间关系,并利用数据检验分析。 ⒈针对问题一,查阅国标(GB 3095-1996)规定,环境空气质量标准分为三级。每一等级对每一项指标都有相应的标准值,且同一等级的空气在污染物的含量上也有差别。这种既有“质的差异”又有“量的差异”的问题可采用动态加权评价方法建立评价模型,并利用决策分析中的Borda函数方法确定最终的排序方案。

⒉针对问题二,通过观察附件一、二中的数据可知,需要利用附件一中数据建立预测模型,并用问题二中数据检验分析。故可先利用灰色关联度分析方法讨论四种气象参数分别对三种污染物浓度的影响程度,为了进一步讨论空气质量与气象参数的关系,建立BP神经网络预测模型,并利用附件二中数据检验分析。

具体各问问题分析见本文(五)。

五、模型的建立与求解

5.1 问题一模型建立与求解 5.1.1 问题一的分析

问题一要求建立由污染物浓度评价空气质量的数学模型,并对四个城市空气质量进行排序。查阅国标(GB 3095-1996)规定知,环境空气质量标准分为三级,每一个级别对每一项指标都有相应的标准值(相关数据见表1)。也就是说对于每一个评价指标(即

SO2、NO2、PM10的浓度),既有同级别的差异,同级别又有不同量值的差异。对于这

种既有“质差”,又有“量差”的问题,采用定常加权法显然是不合理的,故合理有效地方法是动态加权综合评价方法。

表1:国标GB 3095-1996中3个主要项目标准限值 (单位:mg

m

3

5.1.2 问题一模型的建立

⒈评价指标的规范化处理

因为评价指标可能有极大型的、极小型的、中间型、或区间型四种情况,且可能各有不同的量纲,故需要对不同类型的指标变换成统一的、无量纲的标准化指标。

1°评价指标类型的一致化处理

通过判断可知SO2、NO2、PM10的浓度这三类指标均为极小型指标,即总是期望指标的取值越小越好。故在此不需要将进行指标类型一致化处理。

2°评价指标无量纲化处理

一般来说,数据的无量纲化处理有标准差方法、极值差方法和功效系数方法等。在此,选取极值差方法对三类指标进行标准化处理。处理方法为:

 xij

1i55

xijmjMjmj

(i1,2,,55;j1,2,3) (1.1)

[0,1]是无量纲的指标观测值。经过此其中Mjmax{xij},mjmin{xij}(j1,2,3),则xij

1i55

处理我们可以得到评价指标经标准化处理后的三级区间。 ⒉动态加权函数的确定

根据空气质量问题的实际问题,各项指标xi对综合评价的影响比较符合随着类别

pi(i1,2,3)的增加呈现先缓慢增加,中间快速增长,最后平缓增加趋于最大。于是不妨

选取呈正态分布曲线的偏大型正态分布函数作为动态加权函数,即:

当xi时,0,

2

xi wi(x) (1.2) i

,当xi时,1e

其中i在这里取指标xi的第一级浓度标准区间的中值,即i(b1(i)a1(i))/2,i由

(i)

wi(a3)0.9(1i3)确定。

由标准化处理后的实际数据经计算可得10.1,20.335,30.1,

10.5341,20.4492, 30.5341,则代入上式可以得到SO2、NO2、PM10三项指标的动态加权函数。

图1:加权函数的图像

⒊建立综合评价模型

为了给每次的检测值进行排序,在基于上述模型的同时,取综合评价模型为各评价指标的动态加权和,即:

X

w(x)x (i1,2,3) (1.3)

i

i

i

i1

m

由此综合评价指标函数可以求出每个评价对象的N个综合评价指标值

Xk(j)(k1,2,,n;j1,2,,N),且据此大小排序,可得到n个评价对象的N个排序方

案。

利用决策分析中的Borda函数方法来确定综合排序方案。若在第i个排序方案中排在第j个被评价对象后的个数为Bi(uj),令Bi(uj)nk,则被评价对象uj的Borda数为

B(uj)

B(u)

i

j

i1

m

(j1,2,3,4) (1.4)

根据此式的计算结果大小进行排序,便可得到n个被评价对象的总排序结果。

综合以上的数据处理、权的求法及排序函数的数学模型,建立以下由污染物浓度评价空气质量的数学模型:

xijmjx,(i1,2,,55;j1,2,3)ij

Mjmj

当xi时,0,2

xiwi(x)i ,当xi时,1e

m

Xw(x)x,(i1,2,3)

iii

i1m

B(u)B(u)(j1,2,3,4)

jij

i1

5.1.3 问题一模型的求解与分析

1.算法

(1)运用极值差法,将数据先归一化化成可比较的[0,1]区间上的数值 (2)根据偏大型正态分布函数,确定三类指标的动态加权函数

(3)i从1开始到3,k从1到4,j从1到55,对(2)得到的新数值矩阵进行加权求和,得到不同的i的分数

(4)对分数进行从大到小的排序,得到4个评价对象的55个排序方案。 (5)利用Borda函数计算4个被评价对象的Borda数,并根据Borda数从大到小

进行排序,得到最终排序结果

2.求解及分析 (1)求解

运用MATLAB软件编程(见附录1)对各次检测值进行加权求和,得到各综合评价指标值:部分结果见下表;

根据表2的结果进行排序得到55个排序方案后,利用Borda函数编程计算可得A、B、C、D的Borda数及总排序结果如表3 所示

的是B城市,其次是C城市,排在第三位的是D城市,而空气质量最好的是A城市。

5.2 问题二模型建立与求解 5.2.1 问题二的分析

问题二要求解决以下两个问题:一是分析城市A的空气质量与气象参数之间的关系,二是利用附件二中的数据进行检验分析。

根据常识,大气污染物与气象条件有着紧密联系,特别是风速对其影响非常明显,而大气压、温度、湿度对大气污染物浓度的影响并不明确。故可以通过灰色关联分析方法分析大气污染物SO2、NO2、PM10的浓度与气象参数之间的强弱主次关系。 通过观察附件一和附件二中数据的关系,可知需要建立空气质量与气象参数相关的预测模型。而空气质量与气象参数之间存在着复杂的非线性关系,对于非线性关系研究,可以通过神经网络模型,二次多项式逼近等方法解决。故在此刻建立BP神经网络预测模型,并利用附件二中数据对预测值进行检验分析。 5.2.2 问题二模型的建立

⒈灰色关联分析方法模型的建立

灰色关联度分析法是灰色系统理论中一种定量描述因素间发展势态的相似或相异程度的量化比较方法。它的基本思想是根据序列曲线几何形状的相似程度来判断其联系是否紧密。一般地,曲线越接近,相应序列之间的关联度就越大,反之就越小。灰色关联度分析法的步骤与模型如下:

1°分别选取大气污染物SO2、NO2、PM10的日平均浓度数列为参考数列,气象参数数列为比较数列,其中参考数列记为x0(k),比较数列记为xi(k)。

2°由于气象参数数列中变量的量纲不同,为消除量纲对分析结果的影响,需要进行无量纲化处理。常用的有标准化、初始化、极差法、最大值化等,在此也选用极差法进行处理,如下:

 令xij

xijmjMjmj

(i1,2,,55;j1,2,3,4) (2.1)

[0,1]是无量纲的指标观测值。 其中Mjmax{xij},mjmin{xij}(j1,2,3),则xij

1i55

1i55

3°计算关联度系数,公式为

(k)

minmin|

i

ki

i

x(k)x(k)|maxmax|x(k)x(k)| (2.2)

|(k)(k)|maxmax|(k)(k)|

i

i

k

i

i

k

i

其中:|xi(k)x0(k)|为x0(k)和xi(k)第k个点的绝对误差;minmin|xi(k)x0(k)|为

i

k

两级最小差;maxmax|xi(k)x0(k)|;为分辨率,01,一般取0.5;越大,

i

k

分辨率越小,越小,分辨率越大。

4°计算关联度,其公式为

其中,ri即为xi对x0的关联度

⒉BP神经网络进行预测模型的建立

通过上述灰色关联度分析,明确了大气污染物SO2、NO2、PM10的浓度与气象参数之间的强弱主次关系。但是大气污染物浓度与气象参数存在复杂的非线性关系,故在此建立BP神经网络模型进一步研究。

本文采用的是多层感知器的误差反向传播算法(Error Back Proragation),即BP算法[3]。其基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐层逐层处理后,传向输出层。若输出层的实际输出与期望的输出不符,则转入误差的反向传输阶段。误差反传是将输出误差以某种形式通过隐层向输入曾逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,该误差信号即作为修正各单元权值的依据。信号正向传播与误差反向传播的各层权值的调整是反复进行的,直至网络输出的误差减少到可接受的程度,或是进行到预先设定的学习次数,结构图如下。

r

i

1nnk1

(k) (2.3)

i

符号说明:

X(x1,x2,x3,x4)T 输入变量向量组(四个变量)

Y(y1,y2,...yi,...ym)T 隐层输出变量(m为隐变量个数)向量组

H(h1,h2,h3)T 输出层输出向量组(大气污染物浓度指标) D(d1,d2,d3)T 期望输出向量组(为常向量组) W(w1,w2,...wi,...wm)T 输入层到隐层之间的权值矩阵 V(v1,v2,v3)T 隐层到输出层之间的权值矩阵

(0,1) 比例常数,表示学习速率

用X(x1,x2,x3,x4)T表示四个气象参数变量(大气压、温度、湿度、风速),隐层输出变量设为7个,用Y(y1,y2,y3,y4,y5,y6,y7)T表示,输出层输出向量(大气污染物浓度)用H(h1,h2,h3)T表示,而期望输出为常向量D(d1,d2,d3)T

根据BP神经网络原理,对于输出层,有

hkf(netk) k1,2,3

对于隐层,有

netkvjkyj k1,2,3

j1

m

(2.4)

yjf(netj) j1,2...m

netjwijxi j1,2...m

i1

m6

(2.5)

其中f(x)

1

(2.6) 1ex

5.2.3 问题二模型的求解

5.2.3.1灰色关联度分析模型求解

首先,将0.5代入公式,用MATLAB编程(见附录3 )可计算得到大气污染物SO2、

NO2、PM10浓度与各气象要素的关联系数,部分结果见表4

表 4 :大气污染物与各个气象参素的关联系数

然后将表4 中的关联系数代入(2.3)式计算得大气污染物SO2、NO2、PM10浓度与各气象要素的关联度,如下表

表 5:大气污染物浓度与各气象参数的关联度

x

1

x

2

x

3

x

4

r(SO2) 0.62183 0.70560 0.63975 0.66509 r(NO2) 0.64906 0.70104 0.66289 0.63107 r(PM10) 0.62654 0.69898 0.67028 0.69972

通过对表5中的数据分析可知:

影响SO2浓度的气象参数排序为:温度>风速>湿度>大气压 影响NO2浓度的气象参数排序为:温度>湿度>大气压>风速 影响PM10浓度的气象参数排序为:风速>温度>湿度>大气压

综上,可知四种气象参数对大气污染物SO2、NO2、PM10浓度的影响程度不同,其中对

SO2和NO2影响程度最大的是温度,而风速则是影响PM10浓度的主要因子。

5.2.3.2 BP神经网络模型求解 ⒈算法

Step1:初始化。对权值矩阵W、V赋随机数,将样本模式计数器p和训练次数计数q置为1,误差E置0,学习率设为01内的小数,网络训练后达到的精度Emin设为一个正的小数。 Step2:输入训练样本对,计算各层输出。用当前样本对向量数组X、D赋值,并计算Y、H各分量。

Step3:计算网络输出误差。共有6对训练样本,网络对于第i个样本具有误差

E

i

总输出误差(均方根误差)为

ERME

Step4:计算各层误差信号

koj

y

EEhk

(dkhk)hk(1hk)netkhknetk

4EEyj

kovjkyj(1yj)

netjyjnetjk1

Step5:调整各层权值。权值调整量为

E

wjk j1,2...,4; k1,2,,m

wjk

E

vjk j1,2...m; k1,2,3

vjk

Step:6:检查是否对所有样本完成一次轮训。若p4,计数器p,q加1,返回Step2,否则进行下一步。

Step7:检查网络总误差是否达到精度要求。若ERMEEmin,训练结束,否则E置0,p置1,返回Step2 ⒉结果

使用Matlab编程计算(程序见附录4),训练后的神经网络模拟的指标与实际数据几乎完全吻合,最终得到的SO2、NO2、PM10浓度预测值如下:

5.2.4 问题二结果的分析及验证

由于通过神经网络模型预测出了2009年7月26至2009年7月30日的大气污染物浓度,故可通过附录二中这五天的实际值进行检验分析。实际值与预测值对比如下:

表7:SO2浓度实际值与预测值的统计比较结果

表8:NO2浓度实际值与预测值的统计比较结果

表9:PM10浓度实际值与预测值的统计比较结果

图2:误差曲线图

NO2、PM10浓度的预测值与实际值的绝对误差波动不大,从图2中可见5天内SO2、

通过计算得SO2浓度的平均绝对误差为0.0061,NO2浓度的平均绝对误差为-0.004,

PM10浓度的平均绝对误差为0.017。故BP神经网络模型预测值的误差较小,且波动相

对稳定,预测效果理想。而通过图中残差平方和SSE、T检验值以及组内离均差平方和

SSW判断可知此模型的拟合优度较高,预测精度较高。

六、模型的评价与推广

7.1 模型的评价

问题一中,考虑到大气污染物浓度这一评价指标的“质差”和“量差”的关系,采用了动态加权综合评价的方法建立模型,最后利用Borda函数得到了四个城市空气质量的总排序。这一模型不仅充分考虑到了每一因素每一属性的所有“差异”的影响和作用,使得评价结果科学合理;而且增加了综合评价的客观性,与定常加权法相比大大淡化了评价人主观因素的影响。

问题二中,灰色关联度分析模型清晰明了地反映了大气污染物SO2、NO2、PM10的浓度与气象参数之间的强弱主次关系。而BP神经网络预测模型则更进一步对污染物浓度与气象参数间复杂的非线性关系进行了研究,用实际值对预测值检验分析后知该模型精度较高,预测结果理想。但是,BP神经网络模型也存在一定的缺点:隐层节点数需要经过多次尝试;学习速度慢;易于陷入局部极小点。 7.2 模型的推广

问题一中的动态加权综合评价模型不仅可以科学地评价空气质量问题,还可以推广到水质评价问题以及经济、军事等领域的许多综合评价问题,具有广泛的应用价值。

问题二中的BP神经网络模型是目前最为广泛应用的神经网络模型之一,在气象预

报中得到了广泛应用。该模型是一种解决非线性问题的有力工具,可以推广的其他领域应用。但由于BP神经网络模型自身的局限性,在实际应用中需要进行一定的改进和修正,本文中的BP神经网络模型若进行改进效果会更好。

七、参考文献

[1] 中华人民共和国国家标准/环境空气质量(GB3095-1996),http://www.stats.gov.cn/tjsj/qtsj/hjtjzl/hjtjsj1999.htm,1996年 [2] 姜启源等, 《数学模型》(第三版),高等教育出版社,2003年8月 [3] 王庚、王敏生,《现代数学建模方法》 ,科学出版社,2008年2月

[4] 苏静芝等,神经网络在空气污染预报中的应用研究,四川环境,2008年4月 [5] 张德丰,《MATLAB神经网络应用设计》,机械工业出版社,2009年1月

八、附录

8.1 附录清单

附录1:求解问题一的MATLAB程序 附录2:问题一的完整数据结果

附录3:求解问题二中灰色关联度分析的MATLAB程序 附录4:求解问题二中BP神经网络模型的MATLAB程序 8.2 附录正文

附录1:求解问题一的MATLAB程序 首先是求解动态加权函数中的i值

x=[0.6,0.67,0.6]; ca=[0.1,0.335,0.1];

ca1=x-ca./sqrtm((-log(0.1))); 从而求出结果 ca1 =

0.[1**********]000 0.[1**********]000 0.[1**********]000 然后编程求解评价指标值和最后总得分 A=[

0.037 0.031 0.098 0.030 0.032 0.058 0.029 0.028 0.028 0.025 0.034 0.108

0.034 0.027 0.067 0.034 0.032 0.060 0.029 0.024 0.059 0.028 0.028 0.094

0.027 0.025 0.039 0.018 0.028 0.052 0.014 0.020 0.031 0.011 0.023 0.061

0.040 0.035 0.067 0.039 0.042 0.065 0.047 0.033 0.033 0.036 0.045 0.090

0.035 0.030 0.076 0.036 0.041 0.068 0.011 0.036 0.040 0.025 0.039 0.106

0.027 0.021 0.056 0.025 0.030 0.041 0.000 0.000 0.000 0.010 0.025

0.026 0.023 0.047 0.023 0.029 0.048 0.011 0.019 0.024 0.013 0.027 0.081

0.026 0.023 0.061 0.017 0.028 0.050 0.007 0.021 0.037 0.014 0.027 0.070

0.027 0.019 0.051 0.010 0.030 0.034 0.005 0.008 0.015 0.010 0.020 0.050

0.025 0.018 0.038 0.009 0.023 0.024 0.005 0.014 0.011 0.009 0.015 0.037

0.036 0.024 0.061 0.013 0.028 0.031 0.011 0.025 0.019 0.015 0.026 0.061

0.028 0.017 0.055 0.016 0.027 0.034 0.006 0.013 0.017 0.011 0.021 0.062

0.032 0.025 0.050 0.023 0.033 0.042 0.005 0.023 0.022 0.014 0.025 0.060

0.035 0.019 0.049 0.051 0.040 0.046 0.014 0.028 0.029 0.016 0.025 0.061

0.037 0.027 0.074 0.081 0.054 0.052 0.017 0.037 0.034 0.019 0.041 0.082

0.044 0.031 0.128 0.100 0.062 0.094 0.013 0.036 0.077 0.019 0.047 0.136

0.029 0.029 0.102 0.019 0.041 0.071 0.003 0.048 0.067 0.005 0.040 0.111

0.033 0.026 0.085 0.019 0.031 0.059 0.006 0.031 0.060 0.005 0.030 0.094

0.031 0.023 0.095 0.009 0.023 0.054 0.004 0.032 0.053 0.003 0.022 0.078

0.045 0.023 0.129 0.017 0.029 0.084 0.017 0.023 0.057 0.022 0.034 0.158

0.032 0.022 0.105 0.011 0.026 0.066 0.009 0.015 0.050 0.014 0.026 0.123

0.033 0.021 0.068 0.020 0.022 0.047 0.021 0.025 0.029 0.018 0.022 0.085

0.033 0.024 0.075 0.018 0.029 0.043 0.016 0.020 0.028 0.016 0.027 0.071

0.056 0.035 0.100 0.036 0.038 0.048 0.042 0.033 0.033 0.033 0.040 0.125

0.059 0.041 0.101 0.045 0.051 0.089 0.077 0.046 0.054 0.032 0.047 0.118

0.065 0.049 0.148 0.081 0.052 0.127 0.054 0.055 0.084 0.037 0.000 0.157

0.051 0.030 0.068 0.029 0.039 0.052 0.013 0.032 0.054 0.010 0.032 0.079

0.044 0.021 0.101 0.010 0.026 0.081 0.030 0.018 0.062 0.014 0.014

0.066 0.024 0.062 0.011 0.032 0.049 0.017 0.018 0.022 0.017 0.027 0.079

0.035 0.018 0.053 0.008 0.023 0.049 0.008 0.009 0.021 0.009 0.004 0.045

0.052 0.023 0.038 0.046 0.025 0.042 0.019 0.013 0.020 0.024 0.014 0.060

0.045 0.025 0.030 0.056 0.028 0.038 0.025 0.017 0.020 0.023 0.016 0.050

0.057 0.034 0.063 0.061 0.041 0.050 0.063 0.031 0.030 0.019 0.027 0.082

0.076 0.043 0.093 0.094 0.055 0.081 0.030 0.047 0.049 0.027 0.058 0.035

0.073 0.036 0.089 0.000 0.067 0.085 0.020 0.021 0.058 0.020 0.025 0.000

0.056 0.028 0.077 0.000 0.057 0.073 0.009 0.020 0.040 0.013 0.019 0.000

0.070 0.031 0.051 0.035 0.037 0.045 0.031 0.029 0.025 0.024 0.031 0.092

0.049 0.029 0.061 0.019 0.028 0.044 0.013 0.024 0.033 0.008 0.028 0.056

0.034 0.026 0.041 0.019 0.031 0.041 0.004 0.032 0.018 0.007 0.031 0.051

0.037 0.040 0.096 0.038 0.050 0.073 0.013 0.052 0.032 0.020 0.057 0.130

0.026 0.027 0.058 0.028 0.030 0.044 0.000 0.000 0.000 0.012 0.035 0.047

0.023 0.029 0.065 0.066 0.027 0.050 0.011 0.042 0.035 0.009 0.034 0.045

0.034 0.031 0.079 0.091 0.038 0.066 0.023 0.035 0.031 0.028 0.044 0.100

0.022 0.028 0.050 0.071 0.033 0.040 0.003 0.046 0.029 0.004 0.033 0.038

0.032 0.043 0.063 0.049 0.046 0.056 0.011 0.032 0.015 0.017 0.048 0.070

0.033 0.035 0.078 0.011 0.031 0.057 0.006 0.034 0.034 0.005 0.041 0.064

0.024 0.031 0.057 0.004 0.032 0.055 0.004 0.019 0.037 0.003 0.036 0.032

0.029 0.030 0.040 0.006 0.032 0.040 0.004 0.015 0.024 0.004 0.029 0.021

0.024 0.052 0.109 0.010 0.050 0.078 0.004 0.031 0.033 0.006 0.060 0.099

0.022 0.026 0.052 0.027 0.028 0.046 0.003 0.012 0.031 0.013 0.027

0.030 0.043 0.068 0.063 0.045 0.069 0.013 0.049 0.031 0.023 0.056 0.000

0.041 0.037 0.075 0.039 0.036 0.044 0.018 0.037 0.020 0.021 0.047 0.064

0.068 0.036 0.060 0.061 0.031 0.047 0.013 0.038 0.032 0.014 0.038 0.054

0.024 0.028 0.041 0.059 0.022 0.033 0.011 0.018 0.022 0.013 0.022 0.042

0.022 0.025 0.037 0.057 0.021 0.027 0.004 0.018 0.013 0.012 0.018 0.029 ];

ca=[0.1,0.335,0.1];%中值

ca1=[0.5341 0.4492 0.5341];%δ的值

B=[0.2 0.6 1;0.67 0.67 1;0.2 0.6 1];%标准分级 a=size(A,1);%A的行数 b=size(A,2);%A的列数

MX=max(A);%A的每列的最大值 MN=min(A);%A的每列的最小值 f1=1;%B的行变量 f2=1;%B的列变量

for j=1:b%将A里面的值标准化 for i=1:a

A(i,j)=(A(i,j)-MN(j))/(MX(j)-MN(j)); end end

X=zeros(a,4);%建立放置每个城市每天空气质量的值矩阵 for i=1:a%计算每个城市每天的空气质量 h=1; k=1;

flag0=1;%算完每个城市每天的空气质量后,跳到下一个城市(h=h+1) for j=1:b

for flag=1:3

if A(i,j)

X(i,h)=X(i,h); break;

elseif A(i,j)>ca(k)&&A(i,j)

k=k+1;%对应每个中值 f2=f2+1;%对应每个等级值

end end

f1=f1+1;%对应每个属性

k=1;%每循环完一次,跳到第一个中值 f2=1;%每循环完一次,又从第一级开始

if flag0==3%判断是否算完了一个城市每天的空气质量 h=h+1; flag0=1; f1=1; else

flag0=flag0+1; end end end

a=size(X,1);%X的行数 b=size(X,2);%X的列数 h=1;

C=zeros(1,b);%建立总体排序矩阵 for k=1:b%将所有城市总体排序 for i=1:a

for j=1:b

if(A(h)>A(i,j)) C(k)= C(k)+1; else end end h=h+1; end end

附录2:问题一的完整数据结果

附录3:求解问题二中灰色关联度分析的MATLAB程序 A=[

0.037 0.034 0.027 0.04 0.035 0.027 0.026 0.026 0.027 0.025 0.036 0.028 0.032 0.035 0.037 0.044 0.029 0.033 0.031 0.045 0.032 0.033 0.033 0.056 0.059 0.065 0.051 0.044 0.066 0.035 0.052 0.045 0.057 0.076 0.073 0.056 0.07 0.049 0.034 0.037 0.026 0.023 0.034 0.022 0.032 0.033 0.024 0.029 0.024 0.022 0.03 0.041 0.068 0.024 0.022

0.031 0.027 0.025 0.035 0.03 0.021 0.023 0.023 0.019 0.018 0.024 0.017 0.025 0.019 0.027 0.031 0.029 0.026 0.023 0.023 0.022 0.021 0.024 0.035 0.041 0.049 0.03 0.021 0.024 0.018 0.023 0.025 0.034 0.043 0.036 0.028 0.031 0.029 0.026 0.04 0.027 0.029 0.031 0.028 0.043 0.035 0.031 0.03 0.052 0.026 0.043 0.037 0.036 0.028 0.025

0.098 0.067 0.039 0.067 0.076 0.056 0.047 0.061 0.051 0.038 0.061 0.055 0.05 0.049 0.074 0.128 0.102 0.085 0.095 0.129 0.105 0.068 0.075 0.1 0.101 0.148 0.068 0.101 0.062 0.053 0.038 0.03 0.063 0.093 0.089 0.077 0.051 0.061 0.041 0.096 0.058 0.065 0.079 0.05 0.063 0.078 0.057 0.04 0.109 0.052 0.068 0.075 0.06 0.041 0.037

663.73 660.13 668.62 665.63 664.15 669.17 672.15 671.5 663.92 666.15 665.3 664.25 666.82 669.17 668.67 673.52 671.75 675.26 663.89 662.38 659.02 662.81 661.79 663.45 658.96 666.58 668.88 657.65 654.79 659.69 663.71 664.6 664.33 671.08 668.92 667.85 666.42 667.63 665.21 663.5 668.06 671.65 663.48 663.02 665.85 667.27 670.33 667.45 663.92 664.4 666.48 664.03 665 664.27 670.76

21.979 22.167 21.319 20.667 19.063 21 18.479 19 21.042 16.979 21 21.458 20.211 22.063 21.563 24.104 18.854 24.205 20.761 20.289 24.146 18.167 23.208 24.213 28.167 28.625 24.958 24.938 24.083 22.154 22.042 23.467 26.063 28.688 26.292 23.104 25.813 23.208 17.75 25.25 25.125 24.208 26.688 19.708 25.085 24.521 20.063 19.255 25.583 23.917 26.25 28.897 24.896 24.354 20.63

16.458 18.5 17.17 18.708 40.917 41.563 49.563 61.146 47.104 51.813 28 23.375 33.436 34.396 39.563 46.021 76.771 51.667 69.13 22.511 21.104 28.542 24.063 25.277 15.583 21.771 46.167 17.271 15.417 31.282 33.188 30 26.688 27.396 41.771 55.479 26.167 57.333 74.271 43.021 46.229 50.563 32.708 74.188 34.596 54.146 88.208 86.191 63.458 64.792 47.938 30.718 44.521 44.042 55.957

1.958 1.479 1.872 0.938 1.188 1.354 1.646 1.729 2 1.667 2.7 2.417 1.205 1.146 1.208 1.333 1.146 2.026 1.644 1.8 2.438 1.521 1.404 1.149 1.646 1.521 1.563 2.375 1.809 2.359 1.766 1.733 1.167 1.125 1.813 1.354 1.188 1.25 1.021 0.875 1.458 1.563 1.771

1.021 1.149 1.354 0.729 1.277 1.125 1.021 0.896 0.974 1.063

1.646 2.043

]';

%级差法进行量纲化

a=size(A,1);

b=size(A,2);

MX=max(A);

MN=min(A);

f1=1;

f2=1;

for j=1:b

for i=1:a

A(i,j)=(A(i,j)-MN(j))/(MX(j)-MN(j));

end

end

%计算关联度系数

A1=[A(:,1) A(:,1) A(:,1) A(:,1)];

SO2=abs(A(:,4:7)-A1);

A1=[A(:,2) A(:,2) A(:,2) A(:,2)];

NO2=abs(A(:,4:7)-A1);

A1=[A(:,3) A(:,3) A(:,3) A(:,3)];

PH=abs(A(:,4:7)-A1);

p=0.5; %分辨率

MX=max(SO2);

MX=max(MX);

MN=min(SO2);

MN=min(MN);

SO2=(MN.*ones(55,4)+p*MX.*ones(55,4))./(SO2+p*MX.*ones(55,4)) %关联系数 SO21=sum(SO2,1)./55;%关联度

MX=max(NO2);

MX=max(MX);

MN=min(NO2);

MN=min(MN);

NO2=(MN.*ones(55,4)+p*MX.*ones(55,4))./(NO2+p*MX.*ones(55,4)) %关联系数 NO21=sum(NO2,1)./55;%关联度

MX=max(PH);

MX=max(MX);

MN=min(PH);

MN=min(MN);

PH=(MN.*ones(55,4)+p*MX.*ones(55,4))./(PH+p*MX.*ones(55,4)) %关联系数

PH1=sum(PH,1)./55;%关联度

result=[SO21;NO21;PH1]

附录4:求解问题二中BP神经网络模型的MATLAB程序

%输入变量

P=[

663.73 660.13 668.62 665.63 664.15 669.17 672.15 671.5 663.92 666.15 665.3 664.25 666.82 669.17 668.67 673.52 671.75 675.26 663.89 662.38 659.02 662.81 661.79 663.45 658.96 666.58 668.88 657.65 654.79 659.69 663.71 664.6 664.33 671.08 668.92 667.85 666.42 667.63 665.21 663.5 668.06 671.65 663.48 663.02 665.85 667.27 670.33 667.45 663.92 664.4 666.48 664.03 665 664.27 670.76

21.979 22.167 21.319 20.667 19.063 21 18.479 19 21.042 16.979 21 21.458 20.211 22.063 21.563 24.104 18.854 24.205 20.761 20.289 24.146 18.167 23.208 24.213 28.167 28.625 24.958 24.938 24.083 22.154 22.042 23.467 26.063 28.688 26.292 23.104 25.813 23.208 17.75 25.25 25.125 24.208 26.688 19.708 25.085 24.521 20.063 19.255 25.583 23.917 26.25 28.897 24.896 24.354 20.63

16.458 18.5 17.17 18.708 40.917 41.563 49.563 61.146 47.104 51.813 28 23.375 33.436 34.396 39.563 46.021 76.771 51.667 69.13 22.511 21.104 28.542 24.063 25.277 15.583 21.771 46.167 17.271 15.417 31.282 33.188 30 26.688 27.396 41.771 55.479 26.167 57.333 74.271 43.021 46.229 50.563 32.708 74.188 34.596 54.146 88.208 86.191 63.458 64.792 47.938 30.718 44.521 44.042 55.957

1.958 1.479 1.872 0.938 1.188 1.354 1.646 1.729 2 1.667 2.7 2.417

1.205 1.146 1.208 1.333 1.146 2.026 1.644 1.8 2.438 1.521 1.404

1.149 1.646 1.521 1.563 2.375 1.809 2.359 1.766 1.733 1.167

1.125 1.813 1.354 1.188 1.25 1.021 0.875 1.458 1.563 1.771 1.021 1.149 1.354 0.729 1.277 1.125 1.021 0.896 0.974 1.063

1.646 2.043

];

%输出变量

T=[

0.037 0.034 0.027 0.04 0.035 0.027 0.026 0.026 0.027 0.025 0.036 0.028 0.032 0.035 0.037 0.044 0.029 0.033 0.031 0.045 0.032 0.033 0.033 0.056 0.059 0.065 0.051 0.044 0.066 0.035 0.052 0.045 0.057 0.076 0.073 0.056 0.07 0.049 0.034 0.037 0.026 0.023 0.034 0.022 0.032 0.033 0.024 0.029 0.024 0.022 0.03 0.041 0.068 0.024 0.022

0.031 0.027 0.025 0.035 0.03 0.021 0.023 0.023 0.019 0.018 0.024 0.017 0.025 0.019 0.027 0.031 0.029 0.026 0.023 0.023 0.022 0.021 0.024 0.035 0.041 0.049 0.03 0.021 0.024 0.018 0.023 0.025 0.034 0.043 0.036 0.028 0.031 0.029 0.026 0.04 0.027 0.029 0.031 0.028 0.043 0.035 0.031 0.03 0.052 0.026 0.043 0.037 0.036 0.028 0.025

0.098 0.067 0.039 0.067 0.076 0.056 0.047 0.061 0.051 0.038 0.061 0.055 0.05 0.049 0.074 0.128 0.102 0.085 0.095 0.129 0.105 0.068 0.075 0.1 0.101 0.148 0.068 0.101 0.062 0.053 0.038 0.03 0.063 0.093 0.089 0.077 0.051 0.061 0.041 0.096 0.058 0.065 0.079 0.05 0.063 0.078 0.057 0.04 0.109 0.052 0.068 0.075 0.06 0.041 0.037

];

%创建一个BP神经网络,每一个输入向量的取值范围为[0 ,1],隐含层有7个神经 %元,输出层有一个3神经元,隐含层的激活函数为tansig,输出层的激活函数为 %purelin,训练函数为trainc函数,

net=newff([0 700;0 30;0 20;0 2],[7,3],{'tansig','purelin'},'trainbr'); net.trainParam.epochs=2000;%设置训练次数

net.trainParam.goal=0.01;

%设置学习速率为0.1

LP.lr=0.1;

net=train(net,P,T);

P1=[

670.31 665.35 668.56 667.21 676.68

22.521 22 18.93 20.488 22.5

44.208 57.917 72.233 72.65 63.682

1.25 1.542 1 0.932 1.591

];%预测参数

T1=[

0.031 0.021 0.025 0.024 0.026

0.037 0.022 0.034 0.035 0.033

0.047 0.03 0.034 0.035 0.081

];%实际值

T_test=sim(net,P1);%预测值

T_test

T1

%预测值与实际值的误差

for j=1:3

for i=1:5

error(j,i)=T_test(j,i)-T1(j,i);

end

end

error

%绘制误差图

plot(1:5,error(1,:),'-*');

hold on;

plot(1:5,error(2,:),'-+');

hold on;

plot(1:5,error(3,:),'-h');

hold on;


相关文章

  • 设备全寿命周期管理
  • 1.设备全寿命周期管理 1.1基本概念 传统的设备管理(Equipment management)主要是指设备在役期间的运行维修管理,其出发点是设备可靠性的角度出发,具有为保障设备稳定可靠运行而进行的维修管理的相关内涵.包括设备资产的物质运 ...查看


  • 几种作物产量预测模型及其特点分析_林绍森
  • 第20卷 第3期西 南 科 技 大 学 学 报JOURNAL OF S OUTH W EST UN I V ERSI TY OF S C I E NCE AND TECHNOLOGY Vol . 20No . 3 Sep. 2005 几种作 ...查看


  • 综合评价方法的发展与不足
  • 综合评价方法的发展与不足 当前,随着我国社会经济的发展,各种各样的统计分析活动也空前活跃起来,这其中综合评价分析方法以其评价的全面性.客观性.整体性而被广泛应用于事物和某一观点的分析研究中.但从目前的应用来看,综合评价分析方法也被设计者赋予 ...查看


  • 决策理论与方法论文
  • 姓 名: 学 号: 年 级: 学科专业: 二级院系: 日 期: 张 杰 2015200289 研15-4 工商管理 管理学院 2016年6月20日 灰色关联度法在煤矿本质安全评价中的改进及应用 摘 要 由于无量纲化和分辨系数的应用使得邓氏灰 ...查看


  • 基于改进TOPSIS模型的地铁网络节点重要性评价方法
  • ? 基于改进TOPSIS模型的地铁网络节点重要性评价方法 基于改进TOPSIS模型的地铁网络节点重要性评价方法 许海霖,张 晶 (首都师范大学资源环境与旅游学院,北京 100048) 摘 要:对城市地铁网络节点重要性进行评价在城市交通体系的 ...查看


  • 综合评价研究论文
  • XXXX大学毕业论文 题 目: -以城镇化水平的综合评价为例 院 (系): 年 级: 专 业: 班 级: 学 号: 姓 名: 指导教师: 完成日期: 目 录 1 研究背景及研究的目的和意义 ......................... ...查看


  • 上市公司内在价值模型文献综述
  • 上市公司内在价值模型文献综述 李鹏斐 (华南理工大学数学学院,广东 广州 510641) 摘要:价值投资理论认为,上市公司股票价格围绕内在价值上下波动,所以精确计算内在价值就成为投资决策问题的关键.本文介绍了公司内在价值估算的基础理论,并将 ...查看


  • BP神经网络基本原理 1
  • BP神经网络基本原理 2.1 BP神经网络基本原理 BP网络模型处理信息的基本原理是:输入信号Xi通过中间节点(隐层点)作用于输出节点,经过非线形变换,产生输出信号Yk,网络训练的每个样本包括输入向量X和期望输出量t,网络输出值Y与期望输出 ...查看


  • 基于层次分析模型和灰色关联方法的人力资源外包决策的研究
  • 摘要:人力资源管理外包已成为二十一世纪人力资源管理发展的新趋势.本文结合人力资源管理的特点,对人力资源外包决策过程进行分析研究,在调查研究的基础上,构造外包决策层次分析结构图,利用层次分析法建立层次结构模型,利用灰色关联分析得出各个外包项目 ...查看


热门内容