空气质量预测 灰色预测模型 模糊综合评价模型
作者:互联网
摘 要
近年来,随着工业生产的发展和城市人口的迅速增长,城市大气污染日趋严重,2018年,国务院正式印发了《打赢蓝天保卫战三年行动计划》,空气质量的好坏严重影响了人民的日常生 活,为此研究空气质量的数学模型,对于改善空气环境、防治空气污染具 有重要的意义。
针对问题一,根据提供网址查阅了西安市空气监测数据中关于空气质量优良天数、重度及以上(包括重度污染和严重污染)污染天数的统计数据并作出相应图形,基于灰色预测的方法建立了预测空气质量的模型,预测2020年西安市空气质量优良天数为177天,重度及以上(包括重度污染和严重污染)污染天数为31天。空气质量优良天数达到全年总天数49%,重度及以上污染天数占比8%,没有达到预期的目标。
针对问题二,根据2013年12月-2018年12月西安市空气监测数据中关于PM2.5月平均浓度数的统计数据,基于灰色理论知识建立了PM2.5月平均浓度的模型,得到了2020年1-12月西安市每个月的PM2.5月平均浓度(见表),并对比2015年在7、8、9、10、11月份达到PM2.5月平均浓度按照对应月份下降18%的目标。
针对问题三,根据PM2.5,PM10,CO,NO2、SO2,O3六种污染物的浓度值,又因为空气质量状况是一个模糊的概念,先建立空气质量的隶属度函数,对其权重归一化,基于模糊数学理论将这六种污染物综合考虑建立了月度空气质量的模糊综合评价模型。
针对问题四,基于问题三的基础上对2016年11月日起至2017年3月11日和2017年11月20日起至2018年3月15日得到每月的空气质量模糊综合评价指标并与2013年比较,得到实施了机动车限行制度,主要是一氧化碳、二氧化硫污染物的浓度下降,空气质量得到提升。
关键词:空气质量预测;模型;模糊综合评价模型;
一 问题重述
2018年,国务院正式印发了《打赢蓝天保卫战三年行动计划》,对未来三年国家大气污染防治工作进行部署。其中提出环境空气质量目标:“经过3年努力,大幅减少主要大气污染物排放总量,协同减少温室气体排放,进一步明显降低PM2.5浓度,明显减少重污染天数,明显改善环境空气质量,明显增强人民的蓝天幸福感。到2020年,二氧化硫、氮氧化物排放总量分别比2015年下降15%以上;PM2.5未达标地级及以上城市浓度比2015年下降18%以上,地级及以上城市空气质量优良天数比率达到80%,重度及以上污染天数比率比2015年下降25%以上”。
西安市生态环保局官方网站提供了西安市2013年12月至今的西安空气质量月度监测质量报告,网址为:
http://xaepb.xa.gov.cn/ptl/def/def/index_982_4456_ci_trid_3708026.html
请根据这些数据或其它数据来源搜集的空气质量监测数据,建立数学模型解决以下问题:
(1)根据西安市空气监测数据中关于空气质量优良天数、重度及以上(包括重度污染和严重污染)污染天数的统计数据,预测西安市到2020年能否实现“空气质量优良天数达到全年总天数80%,重度及以上污染天数比率比2015年下降25%以上”的目标?
(2)根据2013年12月-2018年12月西安市空气监测数据中关于PM2.5月平均浓度数的统计数据,预测2020年1-12月西安市每个月的PM2.5月平均浓度,并对比2015年1-12月每个月的PM2.5月平均浓度的统计数据,讨论西安市能否在2020年达到PM2.5月平均浓度按照对应月份下降18%?
(3)现行的每日空气质量评价标准是根据PM2.5,PM10,CO,NO2、SO2,O3等六种污染物的浓度值,按照附件1中的《环境空气质量指数(AQI)技术规定》计算方法折算出每种污染物的AQI分指数,分指数最大值(对应的是污染程度最严重的污染物)为代表当天整体空气质量的AQI。请根据西安空气质量月度监测质量报告中的数据,选取合适的指标,建立月度空气质量的综合评价模型。
(4)西安市2016年以来,多次实施了机动车限行制度,时间分别是:(i)2016年11月日起至2017年3月11日(法定节假日和公休日除外);(ii)自2017年11月20日起至2018年3月15日(法定节假日和公休日除外)在冬防期实施机动车限行交通管理措施,每日限行时间为7:00到20:00。(iii)2019年3月18日(周一)至2020年3月13日(周五),(法定节假日和公休日除外)。请根据你在问题(3)中建立的月度质量综合评价模型,参考2016年以前同时期的月度空气质量监测数据,通过计算,说明限行是否对这些时间段内空气质量的提升起到了显著作用?
二 问题分析
近年来,随着工业生产的发展和城市人口的迅速增长,城市大气污染日趋严重, 这使人民的生命和财产受到了严重的威胁,因此我们在生产力发展的同时迫切需 要保护和改善环境,尤其是空气环境,空气质量的好坏严重影响了人民的日常生 活,为此研究空气质量模型,对于改善空气环境、防治空气污染具 有重要的意义。
针对问题一,根据提供网址查阅了西安市空气监测数据中关于空气质量优良天数、重度及以上(包括重度污染和严重污染)污染天数的统计数据并作出相应图形,基于灰色预测的方法建立了预测空气质量的模型,预测2020年西安市空气质量优良天数,重度及以上(包括重度污染和严重污染)污染天数。
针对问题二,根据2013年12月-2018年12月西安市空气监测数据中关于PM2.5月平均浓度数的统计数据,基于灰色理论知识建立了PM2.5月平均浓度的模型,得到了2020年1-12月西安市每个月的PM2.5月平均浓度,并对比2015年的的PM2.5月平均浓度
针对问题三,根据PM2.5,PM10,CO,NO2、SO2,O3六种污染物的浓度值,又因为空气质量状况是一个模糊的概念,基于模糊数学理论将这六种污染物综合考虑建立了月度空气质量的模糊综合评价模型。
针对问题四,基于问题三的基础上对2016年11月日起至2017年3月11日(法定节假日和公休日除外);(ii)自2017年11月20日起至2018年3月15日(法定节假日和公休日除外)综合评价,说明限行对这些时间段内空气质量的提升起到的作用。
三 模型假设
1)已有的数据具有权威性,值得相信,具有使用价值。
2)假设该市各种影响空气质量的软因素(如工业发展,人口数量)保持平稳
3)不考虑突发事件即人为因素(如工业事故)造成的空气质量突变。
4)假设各种因素对环境的影响最终主要表现在PM2.5,PM10,CO,NO2、SO2,O3,不考虑其他随机因素的影响。
5)西安未来一段时间内,政府没有出台关于大规模工业的迁入迁出政策。
6)假设预测时间段内没有发生重大的天气异常。
clear;clc;
A=xlsread("E:\杂七杂八\蓝天保卫战.xlsx");
Day_1=[];Day_2=[];
temp_20=[];
temp_30=[];
for i=1:76
Day_1=[Day_1,A(i,3)+A(i,4)];
Day_2=[Day_2,A(i,7)+A(i,8)];
temp_20=[temp_20,sum(A(i,[3,4]))];
temp_30=[temp_30,sum(A(i,[7,8]))];
end
%优良天数占全年百分比
temp_13=sum(Day_1(1:12));
temp_14=sum(Day_1(12*1+1:12*2));
temp_15=sum(Day_1(12*2+1:12*3));
temp_16=sum(Day_1(12*3+1:12*4));
temp_17=sum(Day_1(12*4+1:12*5));
temp_18=sum(Day_1(12*5+1:12*6));
temp_1=[temp_13,temp_14,temp_15,temp_16,temp_17,temp_18];
% figure
% bar(2013:1:2018,temp_1,'g')
% xlabel('年份');ylabel('天数');
yzb_13=temp_13/sum(A(1:12,2));
yzb_14=temp_14/sum(A(12*1+1:12*2,2));
yzb_15=temp_15/(sum(A(12*2+1:12*3,2))-2);
yzb_16=temp_16/sum(A(12*3+1:12*4,2));
yzb_17=temp_17/sum(A(12*4+1:12*5,2));
yzb_18=temp_18/sum(A(12*5+1:12*6,2));
yzb_1=[yzb_13,yzb_14,yzb_15,yzb_16,yzb_17,yzb_18];
% figure
% plot(2013:1:2018,yzb_1,'b','LineWidth',2)
% xlabel('年份');ylabel('占比');
%重度以上污染天数占全年百分比
temp_23=sum(Day_2(1:12));
temp_24=sum(Day_2(12*1+1:12*2));
temp_25=sum(Day_2(12*2+1:12*3));
temp_26=sum(Day_2(12*3+1:12*4));
temp_27=sum(Day_2(12*4+1:12*5));
temp_28=sum(Day_2(12*5+1:12*6));
temp_2=[temp_23,temp_24,temp_25,temp_26,temp_27,temp_28];
% figure
% bar(2013:1:2018,temp_2,'r')
% xlabel('年份');ylabel('天数');
wrzb_13=temp_23/sum(A(1:12,2));
wrzb_14=temp_24/sum(A(12*1+1:12*2,2));
wrzb_15=temp_25/(sum(A(12*2+1:12*3,2))-2);
wrzb_16=temp_26/sum(A(12*3+1:12*4,2));
wrzb_17=temp_27/sum(A(12*4+1:12*5,2));
wrzb_18=temp_28/sum(A(12*5+1:12*6,2));
wrzb_1=[wrzb_13,wrzb_14,wrzb_15,wrzb_16,wrzb_17,wrzb_18];
% figure
% plot(2013:1:2018,wrzb_1,'b','LineWidth',2)
% xlabel('年份');ylabel('占比');
%2013.1-2019.4优良天数
% figure
% plot(temp_20([1:7]*12-11),'g','LineWidth',2)
% figure
% plot(temp_20([1:7]*12-10),'g','LineWidth',2)
% figure
% plot(temp_20([1:7]*12-9),'g','LineWidth',2)
% figure
% plot(temp_20([1:7]*12-8),'g','LineWidth',2)
% figure
% plot(temp_20([1:6]*12-7),'g','LineWidth',2)
% figure
% plot(temp_20([1:6]*12-6),'g','LineWidth',2)
% figure
% plot(temp_20([1:6]*12-5),'g','LineWidth',2)
% figure
% plot(temp_20([1:6]*12-4),'g','LineWidth',2)
% figure
% plot(temp_20([1:6]*12-3),'g','LineWidth',2)
% figure
% plot(temp_20([1:6]*12-2),'g','LineWidth',2)
% figure
% plot(temp_20([1:6]*12-1),'g','LineWidth',2)
% figure
% plot(temp_20([1:6]*12),'g','LineWidth',2)
%2013.1-2018.12污染天数
% figure
% plot(temp_30([1:7]*12-11),'r','LineWidth',2)
% figure
% plot(temp_30([1:7]*12-10),'r','LineWidth',2)
% figure
% plot(temp_30([1:7]*12-9),'r','LineWidth',2)
% figure
% plot(temp_30([1:7]*12-8),'r','LineWidth',2)
% figure
% plot(temp_30([1:6]*12-7),'r','LineWidth',2)
% figure
% plot(temp_30([1:6]*12-6),'r','LineWidth',2)
% figure
% plot(temp_30([1:6]*12-5),'r','LineWidth',2)
% figure
% plot(temp_30([1:6]*12-4),'r','LineWidth',2)
% figure
% plot(temp_30([1:6]*12-3),'r','LineWidth',2)
% figure
% plot(temp_30([1:6]*12-2),'r','LineWidth',2)
% figure
% plot(temp_30([1:6]*12-1),'r','LineWidth',2)
% figure
% plot(temp_30([1:6]*12),'r','LineWidth',2)
temp40=[GM_11(temp_20([1:7]*12-11),7:8)
GM_11(temp_20([1:7]*12-10),7:8)
GM_11(temp_20([1:7]*12-9),7:8)
GM_11(temp_20([1:7]*12-8),7:8)
GM_11(temp_20([1:6]*12-7),7:8)
GM_11(temp_20([1:6]*12-6),7:8)
GM_11(temp_20([1:6]*12-5),7:8)
GM_11(temp_20([1:6]*12-4),7:8)
GM_11(temp_20([1:6]*12-3),7:8)
GM_11(temp_20([1:6]*12-2),7:8)
GM_11(temp_20([1:6]*12-1),7:8)
GM_11(temp_20([1:6]*12),7:8)];
temp40=floor(temp40);
temp_41=sum(temp40)/365;
temp50=[GM_11(temp_30([1:7]*12-11),7:8)
GM_11(temp_30([1:7]*12-10),7:8)
GM_11(temp_30([1:7]*12-9),7:8)
GM_11(temp_30([1:7]*12-8),7:8)
GM_11(temp_30([1:6]*12-7),7:8)
GM_11(temp_30([1:6]*12-6),7:8)
GM_11(temp_30([1:6]*12-5),7:8)
GM_11(temp_30([1:6]*12-4),7:8)
GM_11(temp_30([1:6]*12-3),7:8)
GM_11(temp_30([1:6]*12-2),7:8)
GM_11(temp_30([1:6]*12-1),7:8)
GM_11(temp_30([1:6]*12),7:8)];
temp50=floor(temp50);
temp_51=sum(temp50)/366;
(sum(temp50(:,2))-sum(temp_30(12*2+1:12*3)))/sum(temp_30(12*2+1:12*3))
程序二:
function xt=GM_11(x,t)
n=length(x);
x0=x;
for i=2:n
x0(i)=x(i)+x0(i-1);
end
x1=x;
for i=2:n
x1(i)=0.5*x0(i)+0.5*x0(i-1);
end
y=ones(n-1,1);
for i=2:n
y(i-1)=x(i);
end
x2=y;
for i=2:n
x2(i-1)=x1(i);
end
X=[-x2 ones(n-1,1)];
A=X\y;
a=A(1);b=A(2);
x0_L=x;
for i=2:n
x0_L(i)=(x(1)-b/a)*exp(-a*(i-1))*(1-exp(a));
end
x0e=abs(x0_L-x);
mx=mean(x);
sx=0;
for i=1:n
sx=sx+(x(i)-mx)^2;
end
sx=sx/n;
me=mean(x0e);
se=0;
for i=1:n
se=se+(x0e(i)-me)^2;
end
se=se/n;
c=se/sx;
k=0;
for i=1:n
if abs(x0e(i)-me)<=0.6745*sx
k=k+1;
end
end
p=k/n;
if nargin==1
return
end
nn=length(t);
xt=t;
for i=1:nn
if t(i)==1
xt(i)=x(1);
continue
end
xt(i)=(x(1)-b/a)*exp(-a*(t(i)-1))*(1-exp(a));
if isnan(xt(i))
xt(i)=0;
end
end
end
程序三:
clear;clc;
B=xlsread("E:\杂七杂八\蓝天保卫战2.xlsx");
temp_1=[B(1+1),B(12*1+1),B(12*2+1),B(12*3+1),B(12*4+1)
B(1+2),B(12*1+2),B(12*2+2),B(12*3+2),B(12*4+2)
B(1+3),B(12*1+3),B(12*2+3),B(12*3+3),B(12*4+3)
B(1+4),B(12*1+4),B(12*2+4),B(12*3+4),B(12*4+4)
B(1+5),B(12*1+5),B(12*2+5),B(12*3+5),B(12*4+5)
B(1+6),B(12*1+6),B(12*2+6),B(12*3+6),B(12*4+6)
B(1+7),B(12*1+7),B(12*2+7),B(12*3+7),B(12*4+7)
B(1+8),B(12*1+8),B(12*2+8),B(12*3+8),B(12*4+8)
B(1+9),B(12*1+9),B(12*2+9),B(12*3+9),B(12*4+9)
B(1+10),B(12*1+10),B(12*2+10),B(12*3+10),B(12*4+10)
B(1+11),B(12*1+11),B(12*2+11),B(12*3+11),B(12*4+11)
B(1+12),B(12*1+12),B(12*2+12),B(12*3+12),B(12*4+12)];
% for i=1:12
% figure
% if i==1
% plot(2013:2018,[B(1),temp_1(i,:)],'r','LineWidth',2);
% else
% plot(2014:2018,temp_1(i,:),'r','LineWidth',2);
% end
% xlabel("年份");ylabel("PM2.5含量");
% end
temp_1=temp_1';
temp_10=[GM_11(temp_1(:,1),6:7)
GM_11(temp_1(:,2),6:7)
GM_11(temp_1(:,3),6:7)
GM_11(temp_1(:,4),6:7)
GM_11(temp_1(:,5),6:7)
GM_11(temp_1(:,6),6:7)
GM_11(temp_1(:,7),6:7)
GM_11(temp_1(:,8),6:7)
GM_11(temp_1(:,9),6:7)
GM_11(temp_1(:,10),6:7)
GM_11(temp_1(:,11),6:7)
GM_11([B(1);temp_1(:,12)],7:8)];
temp_10=floor(temp_10');
(temp_10(2,:)-temp_1(2,:))./temp_1(2,:)
程序四:
clear;clc;
c=xlsread("E:\杂七杂八\蓝天保卫战3.xlsx");%2016.11-2017.3 2017.11-2018.3 2014.11-2015.3
bz_0=[0 0 0 0 0 0 0 0 0 0 0
50 50 150 40 100 50 2 5 160 100 35
100 150 500 80 200 150 4 10 200 160 75
150 475 650 180 700 250 14 35 300 215 115
200 800 800 280 1200 350 24 60 400 265 150
300 1600 1600 565 2340 420 36 90 800 800 250
400 2100 2100 750 3090 500 48 120 1000 1000 350
500 2620 2620 940 3840 600 60 150 1200 1200 500];
bz=bz_0(:,[2 4 7 9]);
test=[];
for i=1:4
for j=1:size(c,1)
temp_1=sum(c(j,i)>=bz(:,i));
bpl=bz(temp_1,i);
bpl_d=bz_0(temp_1,1);
bph=bz(temp_1+1,i);
bph_d=bz_0(temp_1+1,1);
test(j,i)=(bph_d-bpl_d)/(bph-bpl)*(c(j,i)-bpl)+bpl_d;
if test(j,i)<0
input('')
end
end
end
test(:,1)=test(:,1)*0.7;
test(:,2)=test(:,2)*0.1;
test(:,3)=test(:,3)*0.1;
test(:,4)=test(:,4)*0.1;
resault_0=sum(test');
resault(1,:)=resault_0(1:5);
resault(2,:)=resault_0(6:10);
resault(3,:)=resault_0(11:15);
标签:11,12,20,预测,temp,模型,空气质量,GM,sum 来源: https://blog.csdn.net/zsl1373/article/details/120112250