资源描述
雨量预报方法的评价模型
庄丽丽、燕巧、冯琳(指导教师钱浩韵等)
摘要
要评价两种预测方法的准确性,就要在相同地点、相同时段对预报值和实测值进行比较,本文首先针对这一问题,采用k—NN方法对数据进行压缩,将2491个网格点的预报值变为91个观测站点的预报值;在问题一中,我们采用绝对误差的大小,平均值大小来评价两种预报方法准确性的好坏;在问题二中我们通过求公众对预报结果满意度之和(或每个时段的满意度之和)的方法评价两种预报方法的准确性。由问题一和问题二所得出结果可知,两种预测方法各有各的优点和缺点,我们可以根据实际情况,选择较佳的预测方法。
我们应用MATLAB软件编程,处理数据并求解结果。检验结果表明两种预测方法所得的结果相差不大。但我们可以利用相差不大的数据得出我们实际情况所需的较佳预测方法。
一 问题重述
雨量预报对农业生产和城市工作和生活有重要作用,但准确、及时地对雨量作出预报是一个十分困难的问题,广受世界各国关注。我国某地气象台和气象研究所正在研究6小时雨量预报方法,即每天晚上20点预报从21点开始的4个时段(21点至次日3点,次日3点至9点,9点至15点,15点至21点)在某些位置的雨量,这些位置位于东经120度、北纬32度附近的53×47的等距网格点上。同时设立91个观测站点实测这些时段的实际雨量,由于各种条件的限制,站点的设置是不均匀的。
气象部门希望建立一种科学评价预报方法好坏的数学模型与方法。气象部门提供了41天的用两种不同方法的预报数据和相应的实测数据。
MEASURING中包含了41个名为<日期>.SIX的文件,如020618.SIX表示2002年6月18日晚上21点开始的连续4个时段各站点的实测数据(雨量),这些文件的数据格式是:
站号 纬度 经度 第1段 第2段 第3段 第4段
58138 32.9833 118.5167 0.0000 0.2000 10.1000 3.1000
58139 33.3000 118.8500 0.0000 0.0000 4.6000 7.4000
58141 33.6667 119.2667 0.0000 0.0000 1.1000 1.4000
58143 33.8000 119.8000 0.0000 0.0000 0.0000 1.8000
58146 33.4833 119.8167 0.0000 0.0000 1.5000 1.9000
雨量用毫米做单位,小于0.1毫米视为无雨。
(1) 请建立数学模型来评价两种6小时雨量预报方法的准确性;
(2) 气象部门将6小时降雨量分为6等:0.1—2.5毫米为小雨,2.6—6毫米为中雨, 6.1—12毫米为大雨,12.1—25毫米为暴雨,25.1—60毫米为大暴雨,大于60.1毫米为特大暴雨。若按此分级向公众预报,如何在评价方法中考虑公众的感受?
二 符号说明
: 表示第种预报方法,
: 表示第种预报方法预测第天、第个时段、第个站点雨量值,
: 第天、第个时段、第个站点的实测值,
: 第种预报方法在第天、第个时段、第个站点的绝对误差
,
: 第一种预报方法比第二种预报方法更准确的次数所占的比例
(绝对误差的平均值) : 91个站点在41天内,每个时段绝对误差的平均值。
(绝对误差的最大值) :91个站点在41天内,每个时段绝对误差的最大值。
(绝对误差的最大值) :91个站点在41天内每个时段绝对误差的最大
:公众对第种方法预测的第个观测点、第天、第个时段结果满意度
:雨量转化成的雨级数
三 模型假设
1) 假设雨量小于0.1毫米时视为无雨;
2) 假设经纬度线所构成的图形是矩形;
3) 假设在任意时段内每个测点的雨量分布是均匀的;
4) 假设无雨日不参加评定。
5) 相差相同的绝对雨级,公众的感受一样
6) 假设公众满意时的不满意度为0,不满意度的极限为1
四 问题分析
雨量预报方法的好坏直接影响到预报结果的准确程度,从而在一定程度上影响了人们的日常生活和工作。因此怎样检验预报方法的准确度是我们要解决的问题。
由于此题所给的数据相当大,计算起来较麻烦,所以首先我们对数据做了压缩,由于只有91个实测值,所以我们把2491个要预报雨量的网格点向91个观测站点进行转化,可以用k—NN方法,二维插值法等。
在处理数据k时,我们可以运用以下方法:
1) 正三角形标准,求出正三角形顶点处的三个点,正三角形内部和三条边上的
点,再根据实际情况取适当的边长。
2) 以正方形为标准:求出正方形顶点处的四个点,
3) 以正六边形为标准:求出正六边形顶点处的六个点
4) 以实测点为圆心,R为半径作圆,算出这个圆内预测点的个数,根据实际情况使R取恰当的值,对R进行调试。
5) 以实测点为中心,作矩形,在这个矩形内算出预测点的个数,再根据实际情况取适当的长a和宽b。
经过分析和观测数据,最后我们选择k—NN方法找出离观测站点最近的k个点,再求出这k个点的平均值作为相应观测站点的预测值,根据实际情况,地球上经线之间的距离与纬线之间的距离是不相等的,四个节点和它们之间的线段构成了一个矩形,所以我们选择了K_NN方法来处理数据,最终得到91个与实测点对应的预测点。
通过观察分析数据我们作出91个观测点在所给区域内的分布图,如图1所示:
图1
我们还可以作出91个点组成的雨量在记录的41天内各个时段的分布图,如下图所示:
要比较两种预测方法的准确性,我们可以通过比较同一地点在同一天的同一时段的实测数据与预测数据的绝对误差来实现。我们可以把第一种预报方法比第二种预报方法更准确的次数的累计和求出来,除以(41*4*91),再用这些所得数据与进行比较,若大于,则说明第一种预测方法比第二种预测方法准确;若小于,则说明第二种预测方法比第一种预测方法准确性好。我们还可以通过比较预报的准确率来说明哪一种预测方法比较好。
我们把公众的感受用实测雨级与预报雨级的绝对差来表示,并对其赋予权重,如表格(2):
雨级绝对误差
公众的满意度
0
1
1
0.5
2
0.25
3
0.125
4
0.0625
5
0.03225
通过比较公众对预报结果的满意度来说明哪种预报方法的准确性较好。
五 问题一: 模型的建立分析与求解
根据上面的分析与假设,我们可以建立如下模型:
模型一 :
,
,
: 表示绝对误差的平均值
:表示绝对误差的最大值
表示绝对误差的最小值。
模型一求解:
我们利用MATLAB软件,输入数据,对模型进行求解,得到我们所需要的数据,这些数据如下表(3)所示:
时段
绝对误差(第一种预测方法)
绝对误差(第二种预测方法)
平均值
最大值
最小值
平均值
最大值
最小值
一
1.8780
13.5141
0
1.8712
13.6561
0
二
2.4936
19.6291
0
2.4880
19.7155
0
三
2.1391
16.0223
0
2.1426
16.1509
0
四
2.0347
10.8566
0
1.9124
10.9840
0
观察上述表格中的数据,单从绝对误差的平均值来看,我们可以得到下述结果:在第一个时段内,第二种方法比第一种方法精确;在第二个时段内,第二种方法比第一种方法精确;在第三个时段内,第一种方法比第二种方法精确;在第四个时段内,第二种方法比第一种方法精确。
综上所述,可以得到结论:
不能笼统的说明一种方法是好还是不好,我们要在具体情况下的具体时段来说明。在第一,二,四时段内,预测时要尽可能应用第二种方法;而在第三时段内,预测时应尽可能应用第一种方法。
由上述分析可得到下面的式子:
,
由0,1变量我们可以得到两种预报方法在同一个站点同一天的同一个时段下哪一种方法比较准确。如:时,说明第二种预报方法较准确,时,说明第一种预报方法较准确。
我们用第一种预报方法比第二种预报方法更准确的次数的累计和作为目标建立如下模型:
模型二 :
将所得数据带入模型,计算出的值,再把与进行比较,如果,则说明第一种预报方法比第二种预报方法准确;,如果,则说明第一种预报方法不如第二种预报方法精确。
模型二求解:
通过MATELAB软件,我们可以求得的值。
=0.8214
由于,所以第一种预报方法比第二种预报方法准确。我们利用综合的方法,从全面的角度来考虑预报方法的准确性,因此在考虑预测某一时段或某一雨级的准确性时,需要我们利用模型一或其他的方法进行考虑。
六 问题二:模型的建立、分析与求解
对于91个观测点,41天中的四个时段的“预测数据”是否准确进行讨论。考虑到公众的满意度,我们把雨量转变成雨级进行比较,首先我们要把6小时降雨量转化为6个等级,如表格(1)所示。
等级
雨级
雨量(毫米)
0
无雨
—0.1
1
小雨
0.1—2.5
2
中雨
2.6—6
3
大雨
6.1—12
4
暴雨
12.1—25
5
大暴雨
25.1—60
6
特大暴雨
60.1—
我们用Matlab得出以下数据:
方法一
雨级
预测准确的次数(a)
a与实测次数之比
a与预测总次数之比
预测总次数
实测次数
0(无雨)
7466
65.04%
93.61%
7976
11479
1(小雨)
943
52.07%
19.59%
4814
1811
2(中雨)
110
20.95%
8.81%
1249
525
3(大雨)
81
16.88%
12.78%
634
480
4(暴雨)
31
7.64%
15.9%
195
406
5(大暴雨)
5
2.67%
9.43%
53
187
6(特大暴雨)
0
0.00%
0.00%
3
36
方法二
雨级
预测准确的次数(a)
a与实测次数之比
a与预测总次数之比
预测总次数
实测次数
0(无雨)
7473
65.10%
93.61%
8029
11479
1(小雨)
930
51.35%
19.59%
4810
1811
2(中雨)
107
20.38%
8.81%
1237
525
3(大雨)
78
16.75%
12.78%
611
480
4(暴雨)
30
7.39%
15.9%
189
406
5(大暴雨)
6
3.21%
9.43%
46
187
6(特大暴雨)
0
0.00%
0.00%
2
36
由以上两表得出的数据我们可以看出两种方法所测出的结果并没有太大的差距。虽然差距不大,但我们可以根据每一雨级测量的准确率(a与实测次数之比)来评价这两种方法的优劣。由数据我们得出在测量结果为无雨与大暴雨时,第二种预测方法较准确,而在测量结果为小雨、中雨、大雨和暴雨时第一种预测方法较准确。综上分析,第一种预测方法要比第二种预测方法准确。
第一种方法和第二种方法预测特大暴雨的准确率非常低、甚至为0,是因为特大暴雨不经常发生,而且变化无常,根据现有的气象预报技术是很难准确预报的。
随着雨级的增加预报的准确率就越低,符合实际情况。
我们把预测雨级和实测雨级相等的权重设定为1;预测雨级和实测雨级相差数值为1的权重设定为0.5,相差数值为2的权重设定为0.25,相差数值为3的权重设定为0.125,相差数值为4的权重设定为0.0625,相差数值为5的权重设定为0.03125,相差数值为6的权重设定为0.015625。
即:
也就是说越大公众的满意度越大。
模型三:
(1)
(2)
我们根据 Matlab计算出如下图三所示:
雨级差
0
1
2
3
4
5
6
方法一次数
8636
3582
714
267
59
17
0
方法二次数
8624
3581
718
258
51
9
0
对图三的解释:例如,方法一雨级差为0的次数是8636。
因此(1)式的结果是:
8636*1+3582*0.5+714*0.25+267*0.125+59*0.0625+17*0.03125+0=9568.5
(2)式的结果是:
8624*1+3581*0.5+718*0.25+258*0.125+51*0.0625+9*0.03125+0=8839.2
从结果可以看出,如果我们从整体上考虑方法一优于方法二,因为公众对方法一预测结果满意度的总和要大于对方法二预测结果满意度的总和。
模型四:
, , (3)
, k=1,2,3,4 , (4)
我们根据 Matlab计算出如下图四所示:
雨级差
0
1
2
第一时段
第
二
时
段
第三时段
第四时段
第一时段
第二时段
第三时段
第
四
时
段
第一时段
第二时段
第三时段
第四时段
方法一次数
262
273
269
354
826
770
915
1069
157
179
179
198
方法二次数
252
270
282
341
847
785
921
1045
157
183
199
196
雨级差
3
4
5
第一时段
第二时段
第三时段
第四时段
第一时段
第二时段
第三时段
第四时段
第一时段
第二时段
第三时段
第四时段
方法一次数
57
85
71
53
14
23
13
9
2
7
1
7
方法二次数
55
84
71
51
14
26
10
3
2
4
2
1
对图四的解释:例如,方法一雨级差为0第一时段的次数是262。
因此公众对方法一第一时段的满意度为:262*1+826*0.5+157*0.25+57*0.125+14*0.0625+2*0.03125=102.6875
依次类推
公众对方法一第二时段的满意度为:118.7813;
公众对方法一第三时段的满意度为:113.2188;
公众对方法一第四时段的满意度为:127.3750;
公众对方法二第一时段的满意度为:103.1875;
公众对方法二第二时段的满意度为:118.3750;
公众对方法二第三时段的满意度为:116;
公众对方法二第四时段的满意度为:115.7188;
公众对每种方法每个时段的满意度如表五所示:
时段
方案
第一时段
第二时段
第三时段
第四时段
方法一
102.6875
118.7813
113.2188
127.3750
方法二
103.1875
118.3750
116
115.7188
分析:公众对方法一第一时段预测结果的满意度小于方法二第一时段预测结果的满意度,因此第一时段方法二优于方法一;
公众对方法一第二时段预测结果的满意度大于方法二第二时段预测结果的满意度,因此第二时段方法一优于方法二;
公众对方法一第三时段预测结果的满意度小于方法二第三时段预测结果的满意度,因此第三时段方法二优于方法一;
公众对方法一第四时段预测结果的满意度大于方法二第四时段预测结果的满意度,因此第四时段方法一优于方法二;
由模型三、四可知,在考虑不同公众的不同感受时,我们可以根据实际情况选择最佳的预测方法。
七 模型推广
为了较客观地评定两种方法雨量的预报准确,我们可以采用模糊综合评分方法。模糊评分公式:
式(1) 中第一项是预报基础分,规定为60 分;第二项为强度(量级) 预报的加权分,其中 取分别表示三峡库区五大流域, 分别表示面雨量预报值和实况值, 为面雨量预报值和实况值中的最大项。由式(1) 可知,当预报量级与实况一致时(即预报与实况误差为0) ,该预报评分为100 。当预报量级有误差时,按其误差大小给分,误差越大,分值越低,相反分值越高,预报值越接近于实况值。可以看出,根据误差大小计算的模糊评分,能够很好地表征预报贴近实况的程度,从而较好地检验流域面雨量预报水平。中国气象局文件中对面
雨量不同等级进行分别评分然后求平均,而在实际面雨量预报业务中直接预报的是每个流域面雨量的量级,因此在检验中就可以直接采用面雨量预报量级与实况面雨量量级进行对比评定。当面雨量预报值为0 而实况面雨量也为0 时,视为预报正确,预报评分为100。
动态权重系数法就是权重系数随时间或空间的变化将发生动态调整。综合流域面雨量集成方法的权重系数采用下式计算:
各预报方法的动态预报准确率,计算公式为:
采用这种动态权重系数法可对不同预报方法的预报优势,集成预报的可靠性较每种单独方法要好
参考文献
[1]赵静,但琦 ,数学建模与数学实验(第二版)北京:高等教育出版社,2003。
[2]黄嘉佑等。气象统计分析与预报方法[M].北京:气象出版社,2000。
[3]周晓阳,数学实验与MATLAB 武昌:华中科技大学出版社,2004。
[4]何志学,三峡区间面雨量预报方法极其实验效果:气象出版社,第26卷,19-23页,2005。
:
附录(MATLAB程序)
load yuceshu1
load yuceshu2
load shiceshu
for i=1:91 for j=1:4 for k=1:41
if A1(i,j,k)>=0.1&A1(i,j,k)<=2.5
A1(i,j,k)=1; end
if A1(i,j,k)>=2.6&A1(i,j,k)<=6
A1(i,j,k)=2;end
if A1(i,j,k)>=6.1&A1(i,j,k)<=12
A1(i,j,k)=3; end
if A1(i,j,k)>=12.1&A1(i,j,k)<=25
A1(i,j,k)=4; end
if A1(i,j,k)>=25.1&A1(i,j,k)<=60
A1(i,j,k)=5;end
if A1(i,j,k)>60.1
A1(i,j,k)=6;end end end end
for i=1:91 for j=1:4 for k=1:41
if A2(i,j,k)>=0.1&A2(i,j,k)<=2.5
A2(i,j,k)=1; end
if A2(i,j,k)>2.5&A2(i,j,k)<=6
A2(i,j,k)=2; end
if A2(i,j,k)>6&A2(i,j,k)<=12
A2(i,j,k)=3;end
if A2(i,j,k)>12&A2(i,j,k)<=25
A2(i,j,k)=4;end
if A2(i,j,k)>25&A2(i,j,k)<=60
A2(i,j,k)=5;end
if A2(i,j,k)>60
A2(i,j,k)=6;end end end end
for i=1:91 for j=1:4 for k=1:41
if b(i,j,k)>=0.1&b(i,j,k)<2.5
b(i,j,k)=1;end
if b(i,j,k)>=2.5&b(i,j,k)<=6
b(i,j,k)=2; end
if b(i,j,k)>6&b(i,j,k)<=12
b(i,j,k)=3;end
if b(i,j,k)>12&b(i,j,k)<=25
b(i,j,k)=4;end
if b(i,j,k)>25&b(i,j,k)<=60
b(i,j,k)=5; end
if b(i,j,k)>60
b(i,j,k)=6; end end end end
for j=1:4
shu11=0;shu12=0;shu13=0;shu14=0;shu15=0;shu16=0;
for k=1:41 for i=1:91
if A1(i,j,k)-b(i,j,k)==0&b(i,j,k)>0
shu11=shu11+1; end
if A1(i,j,k)-b(i,j,k)==1
shu12=shu12+1;end
if A1(i,j,k)-b(i,j,k)==2
shu13=shu13+1; end
if A1(i,j,k)-b(i,j,k)==3
shu14=shu14+1; end
if A1(i,j,k)-b(i,j,k)==4
shu15=shu15+1;end
if A1(i,j,k)-b(i,j,k)==5
shu16=shu16+1; end end end
shu11
shu12
shu13
shu14
shu15
shu16
end
for j=1:4
shu21=0; shu22=0; shu23=0; shu24=0;shu25=0;shu26=0;
for k=1:41 for i=1:91
if A2(i,j,k)-b(i,j,k)==0&b(i,j,k)>0
shu21=shu21+1;end
if A2(i,j,k)-b(i,j,k)==1
shu22=shu22+1;end
if A2(i,j,k)-b(i,j,k)==2
shu23=shu23+1;end
if A2(i,j,k)-b(i,j,k)==3
shu24=shu24+1;end
if A2(i,j,k)-b(i,j,k)==4
shu25=shu25+1; end
if A2(i,j,k)-b(i,j,k)==5
shu26=shu26+1;end end end
shu21
shu22
shu23
shu24
shu25
shu26
end
16
展开阅读全文