周卫东,夏桢妍
(1.江苏省扬州市邗江区水利局水政监察大队,江苏 扬州 225009; 2.扬州市邗江区水利局,江苏 扬州 225009)
采用主成分分析(PCA)和改进的BP神经网络(BPNN)模型对扬州市的水资源承载力进行评价,并利用蚁群算法(ACO)和粒子群算法(PSO)优化模型,以提高评估效率与评估精度,为扬州市的水资源利用,以及扬州市的长远发展提供理论支撑。
以扬州地区为例,对当地水资源承载力进行评估。首先需要构建水资源承载力评价指标体系。在选取评价指标时,遵循以下几个原则:可评价性、有效性、易获取性及全面性等[1-2]。基于上述指标选取原则、扬州市具体情况,以及既有的水资源承载力相关研究结果[3-4],研究从水资源承载压力、水资源承载状态以及水资源承载响应等三个维度进行分析,构建了扬州市水资源承载力评价指标体系,如表1所示。
表1 扬州市水资源承载力评价指标体系
表中U1压力维度是指扬州市现存的对水资源承载情况造成压力的某些因素,即会导致可用水资源总量减少的因素[5-6]。
U2状态维度是指扬州市水资源承载力的现状,包括可用水总量、水环境状态等[7-8]。
U3响应维度是指当地政府为了保证水资源的可持续利用和发展而采取的措施、政策等[9-10]。
将各项指标对应的数据输入到BPNN模型中进行训练和学习,实现水资源承载力的智能评价。但研究构建的指标体系中包含的指标较多,达到了18个。这意味着BPNN模型需要构建18个输入节点,从而导致模型的结构过于复杂,影响模型的输出精度和训练效率。为此,采用PCA进行主成分分析来提取公共因子,以降低输入向量的维数,提高模型的训练效率与输出精度。通过最大方差法对各个指标进行因子分析,获取因子贡献率,如表2所示。
表2 基于最大方差法的因子分析
在表2中,共提取公共因子7个,其累加方差达到74.773%,表明这些公共因子能够有效地反映水资源承载力的具体情况。通过因子载荷分析,可以获取7个公共因子所对应的指标。将与公共因子相对应的7个指标作为输入向量输入到BPNN模型中,即可实现高效、精确的水资源承载力评价。实现了基于PCA的指标降维与优化。BPNN模型的性能极度依赖网络参数的选取,传统的人工选择参数策略效率低下,且难以确认选取参数是否为最优参数,从而影响到BPNN的性能。针对这一问题,采用蚁群算法来对其进行优化,寻找最优参数。但ACO算法存在早熟,过早收敛的问题,这会导致ACO算法最终输出的参数并非最优参数。针对这一缺陷,通过遗传算法(GA),使得ACO算法在迭代前的初始信息素浓度具有最佳分布,如式(1):
(1)
GA-ACO能够显著提升BPNN的模型精度,但对模型的效率提升不明显。为此,研究提出一种引入了收缩因子的粒子群算法,来优化BPNN的训练过程,如式(2):
(2)
基于上述内容,构建IACO-IPSO-BPNN模型,如图1所示。
图1 IACO-IPSO-BPNN模型
首先对经过PCA降维的输入样本数据进行预处理,然后输入到由改进PSO和改进ACO优化过的BPNN模型中进行训练,在模型的迭代过程中计算误差,直到模型的精度达到设定目标,或达到设置的最大迭代次数,则停止迭代,结束训练。
为验证研究构建模型的性能,采用扬州市水务局官网公布的数据来对模型进行训练和测试。
评价指标体系的合理性是影响评价模型精度的重要因素。在分析了扬州市的现状、参考了既有的相关文献分析后,构建了扬州市水资源承载力评价指标体系。采用KMO与Bartlett球形检验分析和检验各项指标之间的相关性,以验证指标体系的合理性与有效性,如表3所示。在表3中,KMO检验结果为0.866,Bartlett 球形检验值为0,证明了指标之间具有较高的相关性,且为显著相关。因此,研究构建的扬州市水资源承载力评价指标体系具备较高的合理性和有效性。
表3 KMO和Bartlett 检验结果
目前评价效果较好的智能水资源承载力评价模型有三种,包括基于PSO算法优化的投影寻踪评价模型(PSO-PPE),混沌粒子群遗传算法(CPSGA),以及风力驱动优化算法(WDO)优化的投影寻踪评价模型(WDO-PPE)。但在实际应用中,上述智能评价模型的精度和效率均未能达到理想水平。为此,研究提出一种基于PCA-IACO-IPSO-BPNN的水资源承载力智能评价模型来评估水资源的承载情况和开发潜力。将PCA-IACO-IPSO-BPNN模型记为模型1,PSO-PPE模型记为模型2,CPSGA模型记为模型3,WDO-PPE模型记为模型4,利用相同的水资源相关数据对4种模型进行训练,训练过程如图2所示。在图2(a)中,模型1的收敛速度明显优于其他3种模型,且误差值也略小于其他3种模型,这表明模型1不仅能够更快地完成训练任务,并且模型的精度也优于其他三种模型。图2(a)中,模型1完全收敛只需要迭代51次,比模型2完全收敛所需的迭代次数少13次,比模型3完全收敛所需的迭代次数少28次,比模型4完全收敛所需的迭代次数少57次。在图2(b)中,在各个模型的迭代训练过程中,模型1的Loss值始终低于其他3种模型,且随着迭代次数的增加,模型1的Loss值下降速度更快。说明模型1的训练效率要优于其他3种模型。在迭代至80次时,模型1的Loss值下降至0.48,比模型2的Loss值低0.36,比模型3的Loss值低0.89,比模型4的Loss值低1.26。
图2 4种模型的训练过程
将扬州市各个地区的水资源承载力分成1、2、3、4总共4个等级,等级越高,表示水资源承载力越强。利用扬州市水务局发布的2018年的各地区的水资源数据,来比较上述4种模型的水资源承载力评价准确率,如图3所示。在图3(a)中,模型1的评价准确率达到95%,且预测错误的地区等级偏差较小。在图3(b)中,模型2的评价准确率为90%,比模型1低5%,模型2的预测误差也较小。在图3(c)中,模型3的评价准确率为85%,比模型1低10%,且模型3的预测误差明显大于模型1和模型2。在图3(d)中,模型4的评价准确率为85%,与模型3相当,比模型1低10%。但模型4的预测偏差高于模型3。综上所述,研究提出的PCA-IACO-IPSO-BPNN评价模型能够高效、精确地对水资源承载力进行评估,从而为当地水资源的管理决策提供数据和理论支撑。
目前的水资源承载力评价均有着相同的缺陷,即效率低下,且局限性较强,大多只适用于某个特定区域。针对这一问题,研究构建了指标体系,提出一种基于PCA-IACO-IPSO-BPNN的水资源承载力评价模型。利用水务局发布的数据对模型进行训练和测试。模型1完全收敛只需要迭代51次,比其他模型少13~57次。迭代至80次时,模型1的Loss值为0.48,比其他模型低0.36~1.26。模型1的评价准确率达到95%,比其他模型高5%~10%。因此,研究提出的PCA-IACO-IPSO-BPNN评价模型具有较高的效率和精度,能够为当地水资源的管理决策提供数据和理论支撑。研究纳入的样本种类较少,仅限于扬州市,可能会导致结果存在偏差,因此需要在后续研究中扩大研究范围。