一种基于社区划分的空气质量指数预测的方法
技术领域
本发明属于预测领域,特别涉及一种基于社区划分的空气质量指数预测的方法。
背景技术
近年来,随着中国经济社会的快速发展,人民的生活水平越来越高。然而随之而来的生态环境问题却限制了人们生活质量的提高,国际社会对大气污染、水土流失等生态环境问题的讨论已经越来越多。由于不合理的开发和利用,我国的生态环境面临着严重的威胁,空气质量不断恶化,大气污染问题已经严重影响社会的可持续发展,对广大居民的生命健康也造成了极大的威胁。由此可以看出,推动针对大气污染的研究是当前的重中之重。
空气质量指数是国际上普遍采用的判定空气质量好坏的重要指标。空气质量指数越高,表示空气的污染越严重。随着空气质量指数的增加,越来越多的人口会受到高污染空气带来的不良影响。空气质量指数的增加可能是由于空气中污染物排放量的增加,或者是因为空气污染物稀释不足。空气质量指数的预测可以及时向政府提供大气环境质量的变化趋势,也可用于对大气污染的控制和管理。因此,空气质量指数的预测对人类在未来进行空气污染的治理有着十分重要的影响。
虽然现今社会关于预测空气质量指数的算法越来越多,但是大部分的算法并没有考虑周边城市的气象因素和污染物因素对目标城市空气质量指数的影响。气象因素对空气质量指数的影响是不可或缺的,把气象因素考虑进预测模型中,可以使得预测效果更加精确。本发明提出了一种基于社区划分的空气质量指数的预测方法,选取气象因素中的气压、2分钟平均风速、温度、相对湿度作为研究对象,通过气象因素建立各城市间的相似度矩阵,然后进行社区划分,把周边城市对目标城市的影响考虑在内,最后进行预测模型的建立。
发明内容
发明目的:针对上述问题,本发明提供一种基于社区划分的空气质量指数的预测方法,降低预测空气质量指数方法的时间复杂度。
技术方案:本发明提出一种基于社区划分的空气质量指数预测的方法,包括如下步骤:
(1)对气象因素和污染物因素的数据集进行处理,得到整理后的气象因素数据集和污染物因素数据集;
(2)计算任意两个城市间关于气象因素的相似度,得到各城市间的相似度矩阵;
(3)通过社区划分的方法,将跟目标城市相似性较高的城市归为一个社区;
(4)根据周边城市的污染物因素建立预测模型,进行预测。
进一步的,所述步骤(1)中对气象因素和污染物因素的数据集进行处理的具体步骤如下:
(1.1)对数据进行筛选,选取一段连续的数据;
(1.2)选取气压、2分钟平均风速、温度、相对湿度这四种数据,选择空气质量指数AQI所需要的六种污染物因素:一氧化碳CO、二氧化氮NO2、臭氧O3、PM10、PM2.5、二氧化硫SO2;
(1.3)对数据进行归一化,得到气象因素数据矩阵B′
i和污染物因素数据集A′
i;归一化后的气象因素数据集表示为
归一化后的污染物因素数据集表示为
其中,t表示时间,i表示城市的标号,X表示气象因素,Y表示污染物因素,
表示城市i第t天第1种气象因素的值,
表示城市i第t天第1种污染物因素的值。
进一步的,所述步骤(2)中计算任意两个城市间关于气象因素的相似度的具体步骤如下:
(2.1)城市m和n的气象因素矩阵分别表示为B′m和B′n;
(2.2)通过余弦相似度算法,计算任意两个城市m和n在不同时间t的气象因素的相似度sim(B′m,B′n),公式如下所示:
其中k表示第k种气象因素,xkt表示城市m在t时间第k种气象因素的值,ykt表示城市n在t时间第k种气象因素的值;
(2.3)给第t天的气象因素相似度一个系数ρt-l+1,使得越靠近第t+1的气象因素占比越重,考虑时间因素后,任意两个城市m和n间的相似度记为SA(m,n),公式如下所示:
其中t表示一个常数,l∈t;
(2.4)把求得的任意两个城市m和n的相似度组合成一个关于城市间相似度矩阵SA。
进一步的,所述步骤(3)中通过社区划分的方法,将跟目标城市相似性较高的城市归为一个社区的具体步骤如下:
(3.1)使用K-means算法对城市间相似度矩阵SA进行划分;
(3.2)定义循环变量k,k∈[1,R];
(3.3)k表示社区划分的个数,在k值变化的过程中,计算划分后相对应的社区的模块度;
(3.4)计算得到模块度的最大值Q*,其对应的k’值使得划分后的社区结构较好;
(3.5)通过k’值得到和目标城市在一个社区的z个城市。
进一步的,所述步骤(4)中根据周边城市的污染物因素建立预测模型的具体步骤如下:
(4.1)目标城市a关于Y个污染物因素的矩阵为Aa(Y);
(4.2)考虑目标城市的周边城市j对目标城市a空气质量指数的影响,结合目标城市和周边城市的相似度,得到周边城市j和目标城市a的综合的污染物矩阵W(a,j),公式如下所示;
W(a,j)=SA(a,j)*Aa(Y)
(4.3)通过步骤(4.2),求得目标城市a周边z个城市对目标城市a的影响;
(4.4)统一量纲,得到一个关于目标城市和周边城市的矩阵A(Y);
其中,a表示目标城市,j表示跟目标城市在同一个社区内的周边城市,SA(a,j)表示目标城市a和周边城市j之间的相似度;
(4.5)通过非线性回归方程y=a sin(bx+c)+d进行建模,x和y分别表示时间和污染物,a、b、c、和d是该曲线在拟合过程中需要求得的未知数;
(4.6)矩阵A(Y)中每一列代表一种污染物,把A(Y)的每一列代入y,x是y对应的行数,求得a、b、c、和d四个未知数,分别求出六个污染物的预测值;
(4.7)计算空气质量指数的值:
污染物因素A的空气质量分指数计算公式如下:
AQI=max{IAQIA}
其中,IAQIA表示污染物因素A的空气质量分指数,CA表示污染物因素A的质量浓度值,BPHi表示与CA相近的污染物浓度限值的高位值,BPLo表示表1中与CA相近的污染物浓度限值的低位值,IAQIHi表示表1中与BPHi对应的空气质量分指数,IAQILo表示表1中与BPLo对应的空气质量分指数。
本发明采用上述技术方案,具有以下有益效果:本发明针对预测空气质量指数问题,提出基于社区划分的空气质量指数的预测方法。本发明通过计算各个城市间关于气象因素的相似度,组成了一个各城市间的相似度矩阵。接着使用社区划分的方法,把相似性较高的城市划分在一个社区里。然后综合考虑气象因素和周边城市对目标城市的影响,最后使用非线性回归的方法预测各个污染物的值,计算空气质量指数。本方法降低了时间复杂度,提高了预测的准确度。
附图说明
图1为本发明的总体流程图;
图2为图1中处理气象因素和污染物因素数据集的具体流程图;
图3为图1中计算任意两个城市间关于气象因素的相似度的具体流程图;
图4为图1中社区划分的具体流程图;
图5为图1中根据周边城市的污染物因素建立预测模型的具体流程图。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1-5所述,本发明所述的一种基于社区划分的空气质量指数预测的方法,具体步骤如下:
步骤1:对气象因素和污染物因素的数据集进行处理,得到整理后的气象因素数据集和污染物因素数据集,具体方法为:
步骤1.1:从网上下载的数据中,存在一些数据的缺失,因此需要进行筛选,选取一段连续的数据;
步骤1.2:在下载的气象因素数据中,很多气象因素在短期内不发生改变,因此根据实际情况,选取了其中的四种进行研究,分别是:气压、2分钟平均风速、温度、相对湿度。计算空气质量指数(AQI)所需要的污染物因素分别是:一氧化碳(CO)、二氧化氮(NO2)、臭氧(O3)、PM10、PM2.5、二氧化硫(SO2)这六种,因此选择这六种污染物因素进行研究;
步骤1.3:对数据进行归一化,得到气象因素数据矩阵B′
i和污染物因素数据集A′
i;归一化后的气象因素数据集表示为
归一化后的污染物因素数据集表示为
其中,t表示时间,i表示城市的标号,X表示气象因素,Y表示污染物因素,
表示城市i第t天第1种气象因素的值,
表示城市i第t天第1种污染物因素的值。
步骤2:计算任意两个城市间关于气象因素的相似度,得到各城市间的相似度矩阵,具体方法为:
步骤2.1:城市m和n的气象因素矩阵分别表示为B′m和B′n;
步骤2.2:通过余弦相似度算法,计算任意两个城市m和n在不同时间t的气象因素的相似度sim(B′m,B′n),公式如下所示;
其中k表示第k种气象因素,xkt表示城市m在t时间第k种气象因素的值,ykt表示城市n在t时间第k种气象因素的值。
步骤2.3:给第t天的气象因素相似度一个系数ρt-l+1,使得越靠近第t+1的气象因素占比越重。考虑时间因素后,任意两个城市m和n间的相似度记为SA(m,n),公式如下所示:
其中t表示一个常数,l∈t。
步骤2.4:把求得的任意两个城市m和n的相似度组合成一个关于城市间相似度矩阵SA。
步骤3:通过社区划分的方法,将跟目标城市相似性较高的城市归为一个社区,具体方法为:
步骤3.1:使用K-means算法对城市间相似度矩阵SA进行划分;
步骤3.2:K-means算法的k值不确定,因此定义循环变量k,k∈[1,R];
步骤3.3:k表示社区划分的个数,在k值变化的过程中,计算相对应的划分完社区后的模块度;
步骤3.4:计算得到模块度的最大值Q*,其对应的k’值使得划分后的社区结构较好;
步骤3.5:通过k’值得到和目标城市在一个社区的z个城市。
步骤4:根据周边城市的污染物因素建立预测模型,进行预测,具体方法为:
步骤4.1:目标城市a关于Y个污染物因素的矩阵为Aa(Y);
步骤4.2:考虑目标城市的周边城市j对目标城市a空气质量指数的影响,结合目标城市和周边城市的相似度,得到周边城市j和目标城市a的综合的污染物矩阵W(a,j),公式如下所示;
W(a,j)=SA(a,j)*Aa(Y) (4)
步骤4.3:通过步骤(4.2),求得目标城市a周边z个城市对目标城市a的影响;
步骤4.4:统一量纲,得到一个关于目标城市和周边城市的矩阵A(Y),公式如下所示;
其中,a表示目标城市,j表示跟目标城市在同一个社区内的周边城市,SA(a,j)表示目标城市a和周边城市j之间的相似度。
步骤4.5:通过非线性回归方程y=a sin(bx+c)+d进行建模,x和y分别表示时间和污染物,a、b、c、和d是该曲线在拟合过程中需要求得的未知数;
步骤4.6:矩阵A(Y)中每一列代表一种污染物,把A(Y)的每一列代入y,x是y对应的行数,求得a、b、c、和d四个未知数,分别求出六个污染物的预测值;
步骤4.7:通过公式(6)、(7)和表一,计算空气质量指数的值。
污染物因素A的空气质量分指数按式(6)计算:
AQI=max{IAQIA} (7)
其中,IAQIA表示污染物因素A的空气质量分指数,CA表示污染物因素A的质量浓度值,BPHi表示表1中与CA相近的污染物浓度限值的高位值,BPLo表示表1中与CA相近的污染物浓度限值的低位值,IAQIHi表示表1中与BPHi对应的空气质量分指数,IAQILo表示表1中与BPLo对应的空气质量分指数。
表1空气质量分指数及对应的污染物项目浓度限值
通过在江苏省内20个城市间实施此方法,预测淮安地区的空气质量指数。降低了算法的时间复杂度,提高了准确度。