崔东文
(云南省文山壮族苗族自治州水务局,云南 文山 663000)
水污染物总量分配是水污染物总量控制制度的重要内容之一,科学、客观的水污染物分配对于推进工业企业污染治理、调整产业结构、改善区域水环境质量、促进经济社会发展方式转变具有重要意义。常用于水污染物总量分配的方法有等比例分配法[1]、基尼系数法[2-3]、层次分析法[4]、分配指数法[5]、信息熵法[6]和组合赋权法[7]等。探索科学、客观的水污染物分配模型及方法仍是当前国家实行水污染物总量控制制度的重要内容和研究热点。投影寻踪(projection pursuit,PP)是将高维数据投影到低维空间,并在低维空间进行数据分析研究的统计方法,其在克服维数祸根以及解决小样本、超高维等问题中具有明显优势,在行业领域具有广泛应用[8-9]。在水污染物分配中,PP模型最佳投影方向a的选取对于PP模型确定各水污染物分配指标的权重极为关键。目前,除遗传算法(genetic algorithms,GA)[10-11]、粒子群优化(particle swarm optimization,PSO)算法[12]用于优化PP模型最佳投影方向a外,人工鱼群(artificial fish swarm algorithm,AFSA)算法[13]、人工蜂群(artificial bee colony,ABC)算法[14]、混合蛙跳算法(shuffled frog leaping algorithm,SFL)[15]、蚁群优化(ant colony optimization,ACO)算法[16]、鸡群优化(chicken swarm optimization,CSO)算法[17]等也尝试用于PP模型最佳投影方向a的选取,并取得了较好的应用效果。然而,对于高维优化问题,传统智能优化方法普遍存在早熟收敛和易陷入局部极值等不足。正弦余弦算法(sine cosine algorithm, SCA)是文献[18]于2015年基于正弦余弦函数提出的一种新型优化算法,该算法通过创建多个随机候选解,利用正弦余弦数学模型来求解最优化问题,能够探索不同的搜索空间,有效避免局部最优,具有模型简单、调节参数少、收敛速度快、全局寻优能力强等优点,在函数优化和工程设计领域得到初步应用[18]。
表1 水污染物分配指标体系
虽然PP模型在各行业领域均有广泛应用,但在水污染物分配中的应用较少,尤其是在与新型智能算法相融合的水污染物分配中的应用更为少见。本文基于水资源禀赋条件、效率原则和尊重现状原则选取水资源可利用量等10个水污染物分配指标构建SCA-PP水污染物分配模型,以云南省文山壮族苗族自治州(以下简称文山州)8县(市)水污染物分配为例进行实例研究。主要做法为:①选取水资源可利用量、COD纳污能力等10个指标构建水污染物分配指标体系;②采用6个典型10维测试函数对SCA算法进行仿真验证,并与ACO算法、模拟退火(Simulated Annealing,SA)算法、文化算法(Cultural Algorithm,CA)、布谷鸟搜索(Cuckoo Search,CS)算法和ABC算法的仿真结果进行对比分析;③利用SCA算法优化PP模型最佳投影方向a,构建SCA-PP水污染物分配模型,确定云南省文山壮族苗族自治州8县(市)水污染物分配权重,并计算各县(市)COD和NH3-N的分配量。
水污染物分配涉及区域内社会、经济、水资源条件等多方面因素的影响和制约,属多目标多层次决策优化问题。笔者遵循水资源禀赋条件、效率原则和尊重现状的原则,并结合区域实际,选取10个指标构建水污染物分配指标体系。具体为:基于水资源禀赋条件选取水资源可利用量、COD纳污能力、NH3-N纳污能力3个指标;基于高效性原则选取城镇污水处理率、二产比例和万元产值废水排污量3个指标;基于尊重现状原则选取GDP、总人口、工业污水排放量和年度用水总量4个指标(表1)。
PP模型用于水污染物分配的简要算法如下[8,17]。
a. 数据预处理。设水污染物分配数据集为{x(i,j)|i=1,2,…,n;j=1,2,…,m},为避免水污染物分配指标归一化后出现0的情形,对于正向指标采用式(1)进行数据处理。
(1)
式中:x(i,j)、x*(i,j)分别为第i个区域第j个水污染物指标值及归一化后的值;xmax(j)、xmin(j)分别为第j个水污染物指标的最大、最小值;n、m分别为区域总数及水污染物指标数目。
b. 构造投影指标函数。PP方法就是将m维数据{x(i,j)|j=1,2,…,m}综合成a={a(1),a(2),…,a(m)}为投影方向的一维投影值z(i)。
(2)
式中,a为单位长度向量。
确定投影指标时,要求投影值z(i)的局部投影点尽可能密集,因此,构造投影指标函数为
Q(a)=SzDz
(3)
式中:Sz为投影值z(i)的标准差;Dz为投影值z(i)的局部密度。Sz、Dz的表达式参见文献[8,17]。
c. 优化投影指标函数。将搜寻最优投影方向问题转化为非线性最优求解问题,即:
(4)
d. 计算投影值。将最佳投影方向a代入式(2),得到投影值z(i)。
一般来说,以群体为基础的优化算法是通过一组随机解以及更新策略而开始优化迭代过程,并利用目标函数进行反复评价,在保证足够数的随机解和优化步骤(迭代)条件下,算法可大大增加获得最优解的概率。参考文献[18],SCA算法提出以下位置更新公式:
(5)
(6)
通过式(5)、式(6)组合后的位置更新公式如下:
(7)
式中,r4为rand(0,1)随机数。
SCA算法中4个主要参数为r1、r2、r3和r4。参数r1决定了下一空间位置区域(或移动方向),该区域或移动方向可以是候选解和目标解之间的任一空间或之外的空间;参数r2定义了在移动方向上应该移动的步长;参数r3提供了随机选择权,即随机强调(r3>1)或淡化(r3<1)对所定义距离的影响;参数r4表示如何选择在式(6)、式(7)中的正弦和余弦分量之间切换。
一种优秀算法应能够平衡勘探和开采能力,以期遍历搜索空间内所有区域,并最终收敛到全局最优。为了平衡SCA算法中正弦和余弦函数在搜索范围内的勘探和开采能力,利用式(8)来调整参数r1的自适应变化策略。
(8)
式中:t为当前迭代次数;T为最大迭代次数;a为常数。
在理论上,SCA算法基于下述原因能获得较好的优化性能:
a. 针对给出问题,SCA算法创建并改进一系列候选解,其本质有益于全局勘探和局部优化;
b. 在探索所定义的搜索空间之外的区域时,正弦和余弦函数返回一个大于1或小于-1的值;
c. 当正弦和余弦函数返回值在-1和1之间时,具有较好搜索前景的空间得到开发;
d. SCA算法在定义范围内运用正弦和余弦函数顺利地从勘探阶段过渡到开发阶段;
e. 在优化过程中,全局相对最佳的候选解被存储为一个可变目标点而不丢失;
f. 在优化过程中,候选解总是在当前最佳候选解周围更新他们的位置,并趋向于搜索空间中的最佳区域。
SCA-PP模型水污染物分配实现步骤可归纳如下:
a. 构建水污染物分配指标体系,利用式(1)进行指标一致性处理。
b. 确定目标函数。由于SCA算法是求解极小值,因此取式(4)的倒数作为目标函数,即以式(9)作为适应度函数:
(9)
c. 初始化算法参数。设置群体数目N、最大迭代次数M、常数a、参数r2、r3,搜索空间,设置算法终止条件,并在解空间内随机初始化候选解空间位置Xij(i∈[1,2,…,N],j∈[1,2,…,D])。
d. 基于式(9)计算群体候选解的第一次迭代适应度值,找到并保存当前群体中最佳候选解。
e. 令t=2,利用式(8)计算参数r1,利用式(7)更新候选解位置。
f. 计算新候选解的适应度值,并与前次迭代最佳候选解的适应度值进行比较。若当前候选解优于前次候选解,则保存当前候选解为最佳候选解;否则,保存上次候选解为最佳候选解。
g. 判断算法是否满足终止条件,若满足,则转到步骤h;否则,令t=t+1,重复执行步骤f~g。
h. 输出最优候选解适应度值及所处空间位置,最优候选解所处空间位置即为最佳投影方向a。
i. 将最佳投影方向a代入式(2)求得各县(市)最佳投影值z′(i),将z′(i)归一化处理即为各县(市)水污染物分配权重,该权重乘以水污染物控制总量即为各县(市)水污染物分配结果。
表2 基准函数
针对10维优化问题,采用6个典型10维测试函数(表2)对SCA算法寻优能力进行仿真验证,求测试函数的极小值,并与ACO、SA、CA、CS和ABC算法的寻优结果进行比较,见表3和图1。表2中Sphere、Schwefel 2.22函数常用于测试算法的收敛速度和收敛精度;Griewank函数常用于测试算法对全局与局部搜索能力的平衡性能;Quadric、Rastrigin函数常用于测试算法的全局搜索能力;Ackley函数常用于测试算法跳出局部极值的能力。实验参数设置如下:SCA算法最大迭代次数T=1 000,群体数目N=50,常数a=2,参数r2=2πrand(),r3=2rand()。ACO算法最大迭代次数T=1 000,群体规模N=50,常量Q=1,最大信息素挥发系数ρmax=0.4,最小信息素挥发系数ρmin=0.1,最大信息量τmax=1,最小信息量τmin=0.1。SA算法最大迭代次数T=1 000,种群规模N=50,初始温度T0=500,终止温度Tend=0.001,温度冷却系数q=0.99。CA算法最大迭代次数T=1 000,群体规模m=50,根据标准知识产生的群体规模m′=50。CS算法最大迭代次数T=1 000,鸟窝位置数N=25、发现概率pa=0.25。ABC算法最大迭代次数T=1 000,种群规模SN=50,局部循环次数lc=60。
6种算法基于Matlab 2010a用M语言实现,对表2中6个测试函数重复进行20次寻优计算,并从最优值、最劣值、平均值、标准差4个方面进行评估。其中,寻优平均值反映的是算法在运行至最大迭代次数时可以达到的求解精度,标准差反映算法的收敛稳定性。
表3 函数优化对比结果
图1 各函数测试寻优曲线
a. 从表3可知,对于Sphere、 Schwefel2.22函数,SCA算法寻优精度明显优于ACO、SA、CA、CS和ABC算法,表现出较好的收敛精度和收敛速度;对于Griewank函数,SCA算法寻优获得了理论最优值,寻优效果远远优于ACO、SA、CA、CS和ABC算法,表现出较好的全局与局部搜索平衡能力;对于Quadric函数,SCA算法除最优值寻优劣于CA算法外,其余寻优精度均优于ACO、SA、CA、CS和ABC算法;对于Rastrigin函数,SCA算法寻优获得了理论最优值,寻优效果远远优于ACO、SA、CA、CS和ABC算法,表现出较好的全局搜索能力;对于Ackley函数,SCA算法除标准差劣于ACO、CA算法外,其余寻优精度同样优于ACO、SA、CA、CS和ABC算法,具有跳出局部最优的良好性能。
b. 从图1可见,SCA算法寻优效果明显优于ACO、SA、CA、CS和ABC算法,具有较好的收敛速度、收敛精度和极值寻优能力。
上述比较表明,SCA算法利用正弦余弦数学模型来求解最优化问题,能够探索不同的搜索空间,有效避免局部最优,具有模型简单、调节参数少、收敛速度快、寻优精度高、全局寻优能力强以及收敛稳定性与收敛可靠性好等特点。
云南省文山州位于云南省东南部,全州总面积31 456 km2,辖文山、砚山、西畴、麻栗坡、马关、丘北、广南、富宁7县1市。境内河流分属红河流域和珠江流域,多年平均径流深501 mm,水资源总量157.7亿m3。依据《文山州“十三五”污染减排的重点、难点及思路对策研究》,到2020年云南省文山州COD和NH3-N排放总量控制在31 328 t、3 330 t以内,比2015年的32 977万t、3 510万t均减少约5%。为能科学、客观地对水污染物进行分配,本文基于水污染物分配指标,利用SCA-PP模型将云南省文山州2020年水污染物排放控制总量分解到文山、砚山、西畴、麻栗坡、马关、丘北、广南、富宁7县1市,为“十三五”云南省文山州实施更科学、合理的区域水污染物总量分配提供参考。云南省文山州所辖8县(市)用于水污染物分配的指标见表4。
根据SCA-PP水污染物分配模型实现步骤,采用式(1)归一化后的各县(市)指标构造投影指标函数,并利用SCA算法求解PP模型最佳投影方向(SCA算法搜索空间设置为[0,1],其余参数设置均同上)。将SCA-PP模型连续运行5次,进化过程见图2,计算得到各水污染物分配指标5次最佳投影方向均为a=(0.250 5 0.123 9 0.109 1 0.396 6 0.383 2 0.416 3 0.380 9 0.200 1 0.373 70.328 3),5次最佳适应度值均为0.004 386 019 525 204 0。将此最佳投影方向代入式(2),得到8县(市)水污染物分配的投影值z′(i)=(2.227 6 1.493 0 0.294 4 1.201 7 1.654 7 1.105 5 1.658 1 1.504 7),将z′(i)归一化处理后即为8县(市)水污染物分配权重,该权重分别再乘以2020年文山州COD和NH3-N排放控制总量31 328 t和3 330 t,即可得到文山州8县(市)2020年水污染物分配量(表5)。
表4 云南省文山州所辖行政区水污染物分配指标数据
注:资料来源于2014年《文山州环境质量公报》《水资源公报》和《文山州水资源保护规划》等。
图2 SCA-PP 5次进化过程
表5 文山州8县(市)2020年水污染物分配比例及分配量
从图2及表5可以得到以下结论:
a. SCA算法连续5次运行均迭代至100次就收敛到了全局最优解4.386×10-3,且5次连续运行优化结果完全一致,再次验证了SCA算法具有较好的收敛速度、全局寻优能力和稳健性能。
b. 从最佳投影方向优化结果来看,万元产值废水排污量、城镇污水处理率、二产比例和GDP 4个指标权重最大,在0.380 9~0.416 3之间,其对水污染物分配影响也最大;其次为工业污水排放量、用水总量,权重分别为0.373 7和0.328 3;其余4个指标权重在0.109 1~0.250 5之间,对水污染物分配的影响相对较小。
c. 从SCA-PP模型水污染物分配结果来看,文山市水污染物分配比例最大,为20.00%,这是由于文山市是文山州经济、政治、文化中心,且为州府所在地,其经济、社会、工业等最为发达,理应承担更大的水污染物削减任务。其次为经济总量、人口规模及工业水平相对发达的广南、马关、富宁和砚山4县,水污染物分配比例在13.40%~14.88%之间。其中,广南县在人口规模、年度用水量、水资源可利用量和城镇污水处理率方面表现最为突出,水污物分配比例仅次于文山市;马关县工业相对发达,COD和NH3-N纳污能力最大,水污物分配比例也相对较大;富宁和砚山分别在年度用水量、NH3-N纳污能力、城镇污水处理率和万元产值废水排污量、二产比例等效率方面表现突出。麻栗坡县人口规模不大,但工业较为发达,在用水效率方面表现相对突出,水污染物削减比例为10.79%;丘北县在水资源禀赋方面表现突出,水污染物削减比例为9.92%。西畴县是文山州经济总量、人口规模最小,工业水平最欠发达的区域,因此,水污染物分配比例最小,仅为2.64%。
当然,表4中水污染物削减指标均属动态指标,在实际应用中应注意时适调整指标数据,以期获得更加科学合理的水污染物分配结果。
本文基于水资源禀赋条件、效率原则和尊重现状原则构建水污染物分配指标体系,提出SCA-PP水污染物分配模型,以文山州所辖8县(市)水污染物分配为例进行实例研究,结果表明:
a. 选取的10个指标构建符合区域实际的水污染物分配指标体系,为“十三五”文山州开展区域水污染物分配提供参考和借鉴。
b. 通过6个典型10维测试函数对SCA算法进行仿真验证,并与ACO、SA、CA、CS和ABC算法的寻优结果进行比较。结果表明,SCA算法寻优效果明显优于ACO、SA、CA、CS和ABC算法,具有模型简单、调节参数少、收敛速度快、寻优精度高、全局寻优能力强以及收敛稳定性与收敛可靠性好等特点,具有较好的应用前景。
c. 利用SCA算法搜寻PP模型最佳投影方向a,提出SCA算法与PP模型的融合方法及模型,不仅提高了PP模型的分配精度,而且为优化解决PP模型最佳投影方向提供了新的途径。
d. 从实例水污染物分配结果来看,SCA-PP模型可以获得更加科学合理的水污染物分配结果。在实际应用中,可根据各区域实际增加或减少水污染物分配指标,以及通过适调整指标数据,以获得更科学合理且满足各区域污染物削减任务的分配结果。本文提出的模型及方法具有通用性,有一定的参考价值。
[1] 郑英铭,周晶璧,袁国兵.控制排污总量的河流水质管理:实例介绍[J].水资源保护,1993(2):13-18.(ZHEN Yingming, ZHOU Jingbi,YUAN Guobing.Total amount of emissions control river water quality management:example introduction.[J]. Water Resources Protection,1993 (2):13-18. (in Chinese))
[2] 肖伟华,秦大庸,李玮,等.基于基尼系数的湖泊流域分区水污染物总量分配[J].环境科学学报,2009,29(8): 1765-1771.(XIAO Weihua,QIN Dayong,LI wei,et al.Model for distribution of water pollutants in a lake basin based on environmental Gini coefficient [J]. Acta Scientiae Circumstantiae,2009,29(8): 1765-1771. (in Chinese))
[3] 张文静,陈岩,刘雅玲,等.综合考虑减排效益的污染物总量分配方法研究[J].环境污染与防治,2015,37(3): 107-110.(ZHANG Wenjin,CHEN Yan,LIU Yaling,et al. Total amount allocation methods of pollutants considering emission reduction benefits [J].Environmental Pollution & Control,2015,37(3): 107-110.(in Chinese))
[4] 李如忠,舒琨.基于多目标决策的水污染负荷分配方法[J].环境科学学报,2011,31(12):2814-2821. (LI Ruzhong,SHU Kun. Model for wastewater load allocation based on multi-objective decision making[J]. Acta Scientiae Circumstantiae,2011,31(12):2814-2821. (in Chinese))
[5] 邓义祥,雷坤,富国,等.基于分配指数的渤海TN总量分配研究[J].环境科学研究,2015,28(12):1832-1869. (DENG Yixiang, LEI Kun, FU Guo,et al. Load allocation of total nitrogen around Bohai sea based on allocation index [J]. Research of Environmental Sciences, 2015,28(12):1832-1869. (in Chinese))
[6] 刘杰.基于最大信息熵模型的水污染物总量分配[J]. 长江科学院院报,2015,32(1):16-20. (LIU Jie. Total amount allocation of water pollutant based on model of maximum weighted information entropy[J]. Journal of Yangtze River Scientific Research Institute, 2015, 32(1): 16-20.(in Chinese))
[7] 陈艳萍,胡玉盼.基于组合赋权的水污染物总量区域分配方法[J].水资源保护,2015,31(6):170-173.(CHEN Yanping, HU Yupan. Regional allocation method of water pollutants based on combination weighting[J]. Water Resources Protection,2015,31(6):170-173. (in Chinese))
[8] 崔东文,郭荣.SSO-PP模型在水源地安全保障达标评价中的应用[J].水利经济,2015,33(5):8-13.(CUI Dongwen,GUO Rong. Application of SSO-PP model in security standard evaluation of water sources[J].Journal of Economics of Water Resources, 2015,33(5):8-13. (in Chinese))
[9] 付强,赵小勇.投影寻踪模型原理及其应用[M].北京:科学出版社,2006.
[10] 王柏,张忠学,李芳花,等.基于改进双链量子遗传算法的投影寻踪调亏灌溉综合评价[J].农业工程学报,2012,28(2):84-89. (WANG Bai, ZHANG Zhongxue, LI Fanghua, et al.Comprehensive evaluation of regulated deficit irrigation using projection pursuit model based on improved double chains quantum genetic algorithm[J]. Transactions of the CSAE,2012,28(2):84-89. (in Chinese))
[11] 王婷,方国华,刘羽,等.基于最严格水资源管理制度的初始水权分配研究[J].长江流域资源与环境,2015,24(11):1870-1875.(WANG Ting,FANG Guohua,LIU Yu, et al. Research of initial water rights allocation based on the most stringent water resources management system[J].Resources and Environment in the Yangtze Basin, 2015,24(11):1870-1875.(in Chinese))
[12] 陈广洲,汪家权,解华明.粒子群算法在投影寻踪模型优化求解中的应用[J].计算机仿真,2008,25(8):159-161.(CHEN Guangzhou,WANG Jiaquan,XIE Huaming. Application of particle swarm optimization for solving optimization problem of projection pursuit model [J]. Computer Simulation,2008,25(8):159-161. (in Chinese))
[13] 丁红,刘东,李陶.基于改进人工鱼群算法的三江平原投影寻踪旱情评价模型[J].农业工程学报,2010,26(12):84-88. (DING Hong, LIU Dong, LI Tao.Projection pursuit model for evaluating drought based on improved artificial fish swarm algorithm of Sanjiang plain[J]. Transactions of the CSAE,2010,26(12):84-88. (in Chinese))
[14] 赵建强,戴青松,陈必科,等.基于人工蜂群-投影寻踪法的南方某河水质综合评价研究[J].节水灌溉,2014(8):49-52. (ZHAO Jianqiang,DAI Qingsong,CHEN Bike,et al. Comprehensive evaluation of river water quality in southern China based on artificial bee colony-projection pursuit[J].Water Saving Irrigation,2014(8):49-52. (in Chinese))
[15] 王明昊,董增川,马红亮.基于混合蛙跳与投影寻踪模型的水资源系统脆弱性评价[J].水电能源科学,2014,32(9):31-35. (WANG Minghao,DONG Zengchuan, MA Hongliang.Assessment of water resources system vulnerability based on shuffled frog leaping algorithm and projection pursuit model[J]. Water Resources and Power,2014,32(9):31-35. (in Chinese))
[16] 侯景伟,孔云峰,孙九林.蚁群算法在需水预测模型参数优化中的应用[J].计算机应用,2012,32(10):2952-2956. (HOU Jingwei,KONG Yunfeng,SUN Jiulin. Application of ant colony algorithm for parameter optimization of water demand prediction model[J]. Journal of Computer Applications, 2012, 32(10): 2952-2955. (in Chinese))
[17] 崔东文.鸡群优化算法-投影寻踪洪旱灾害评估模型[J].水利水电科技进展,2016,36(2):12-18.(CUI Dongwen.Projection pursuit model for evaluation of flood and drought disasters based on chicken swarm optimization algorithm[J]. Advances in Science and Technology of Water Resources,2016,36(2):12-18. (in Chinese))
[18] MIRJALILI S. SCA: a sine cosine algorithm for solving optimization problems[J].Knowledge-based Systems, 2016,96(15): 120-133.