基于拉丁超立方抽样的改进型多链DRAM算法求解地下水污染反问题

张双圣1,3,强 静2,刘汉湖1,刘喜坤3,孙韶华4

(1.中国矿业大学 环境与测绘学院, 江苏 徐州 221116; 2.中国矿业大学 数学学院, 江苏 徐州 221116; 3.徐州市城区水资源管理处,江苏 徐州 221018; 4.山东省城市供排水水质监测中心,山东 济南 250100)

摘 要: 针对运用贝叶斯统计方法求解地下水污染反问题时,经典MCMC算法(Metropolis算法)求解结果受样本初始点影响且计算效率低的问题,提出了一种基于拉丁超立方抽样方法的改进型多链延迟拒绝自适应Metropolis算法(DRAM)。将贝叶斯统计方法与二维水质对流-扩散方程相耦合,建立地下水污染源识别模型。构建一个污染物在地下水含水层中瞬时排放的算例,分别运用Metropolis算法、多链Metropolis算法以及改进型多链DRAM算法对污染源信息(污染源强度、排放位置(x,y)和排放时长)进行反求。算例研究表明, Metropolis算法受样本初始点影响,容易出现反演结果局部最优或者反演结果难以收敛的问题;多链Metropolis算法虽然显著提高了反演结果的准确性,但是反演效率相对低下;改进型多链DRAM在保证反演准确性的条件下,可显著提高反演效率(相对于多链Metropolis算法提高68%),实现反演结果准确性与效率的双提高。

关键词: 二维水质模型; 贝叶斯-马尔科夫链蒙特卡洛法; 拉丁超立方抽样; 延迟拒绝自适应Metropolis算法; 污染源识别

0 引言

目前,国内外水污染溯源问题的研究较多,其本质是水质模型参数的识别。 参数识别方法主要有马尔科夫链蒙特卡罗算法(Markov chain Monte Carlo,MCMC)[1-7]、微分进化算法[8-11]、遗传算法[12-13]和最小二乘算法[14]等。陈海洋等[3]运用经典MCMC算法实现了水体污染源项的识别,得到了污染源强度、污染源位置和污染源排放时长3个未知参数的估计值。闵涛等[11]利用遗传算法求解对流-扩散方程源项识别反问题。这些算法可分为确定性方法和不确定性方法,其中确定性方法未考虑误差因素,得到参数确定的估计值,但容易丢掉“真值”;不确定性方法具有较强的随机性,收敛速度慢,计算量随着参数的增多而呈指数增长,得到待估参数的一个小的可靠范围。其中,MCMC方法应用较为广泛。Metropolis算法[13-14]是一种经典的MCMC方法,应用非常广泛。大多数MCMC算法都是通过改进Metropolis算法得到的,比如延迟拒绝算法(delayed rejection, DR)[15-16]、自适应Metropolis算法(AM)[17]、延迟拒绝自适应Metropolis算法(DRAM)[18]等。DRAM算法是一种高效自适应MCMC算法,其本质是把DR算法和AM算法二者组合起来。DR算法保证了马尔科夫链的局部自适应,AM算法采用全局自适应调整策略,因此DRAM算法能够对MCMC链条进行全局和局部的自适应,DRAM算法抽样效率优于DR算法和AM算法各自单独使用的情况[19]。但是Metropolis算法和DRAM算法都只有一条链,容易陷入到局部最优值[19-20],计算结果给决策者造成一定的负面影响。

运用二维地下水水质对流-扩散方程,通过贝叶斯公式建立水体污染源识别模型,得到污染源强度、排放位置(x,y)和排放时长4个未知参数的后验概率密度函数,并运用拉丁超立方抽样方法[21]优化DRAM算法,实现参数反演过程中准确性与效率的双提高,为突发性水污染反问题研究提供借鉴。

1 研究方法

1.1 贝叶斯公式

贝叶斯公式[22-23]如下:

(1)

式中:α为模型的未知参数;d为实测数据;p(α|d)为参数的后验概率密度函数;p(α)为参数的先验概率密度函数;p(d|α)为条件概率密度函数;p(d)为归一化的积分常数。

假设模型中未知参数共有m个,则α=(α1,α2,…,αm)。环境水力学的模型参数都分布在一个特定的范围内,可以认为每个参数都服从均匀分布,且α1,α2,…,αm相互独立。模型参数αi的先验概率密度函数可定义为:

(2)

总的先验分布p(α)可表示为:

(3)

假设模型中实测值共有n个,即d=(d1,d2,…,dn)。di表示第i个实测数据,Ci(x,y,t|α)表示相应的第i个预测值,则εi=di-Ci(x,y,t|α)为测量误差,i=1,2,…,n。假设测量误差服从均值为0、标准偏差为σ的正态分布,且相互独立,则条件概率密度函数p(d|α)可表示如下:


(4)

联合式(1)~(4),可得后验概率密度函数p(α|d)为:


(5)

由于是与参数α的选取无关的固定数,可记为λ。故式(5)可写为:

(6)

在实测数据d固定的条件下,式(6)是关于参数α的函数。式(6)通过积分求解参数α的概率分布,计算较为复杂,难以得出明确的解析表达式。并且随未知参量维数的增加,数值积分算法的计算量将呈指数增长,实现复杂且难度较大。

1.2 延迟拒绝自适应Metropolis算法

式(6)一般可采用马尔科夫链蒙特卡罗方法(MCMC)近似求解。MCMC方法的核心是Monte Carlo模拟方法和Markov Chain抽样方法。当“概率事件”样本点足够多时,频率可以近似代表概率,这是Monte Carlo模拟方法的本质,而Markov Chain抽样方法能够保证Markov链花更多的时间在概率大的区域,节省Monte Carlo模拟方法的工作量。

Metropolis算法是一种经典的MCMC算法,应用非常广泛,具体算法参见文献[13-14],其提议分布一旦设定便保持不变,当提议分布远离目标分布时,马尔科夫链收敛速度会变慢。为了提高马尔科夫链收敛效率,Haario等[18]将DR算法和AM算法结合提出了高效自适应DRAM算法,其具体步骤如下。

1.2.1 非自适应阶段

(1)在模型未知参数α先验范围内随机产生初始的参数样本Xt(t=1),非自适应阶段迭代次数为N0,提议分布为高斯分布qt=N(Xt,C0),其中C0为协方差矩阵,要求C0满足对称正定条件,并且高斯分布满足对称随机游走。

(2)从提议分布N(Xt,C0)中抽取一个参数样本X*;产生[0,1]上的随机数u;计算接受概率其中p(X*|d)与p(Xt|d)由式(6)计算得到。如果接受X*,即Xt+1=X*;否则,拒绝X*,即Xt+1=Xt

(3)重复过程(2),直至达到迭代次数N0

1.2.2 自适应阶段

(1)通过步骤(1)已抽取到样本点X1,X2,…,XN0,此时t=N0。下一步提议函数式中表示参数α的维数,sm=2.38/m2[18];ε表示一个很小的正数,可取为10-6,目的是保证Ct1为正定矩阵;Im是一个m维单位矩阵。自适应阶段迭代次数为N

(2)马尔科夫链的当前状态为Xt,从提议分布qt+1中抽取一个样本计算接受概率产生[0,1]上随机数u1

如果接受转入过程(3)。

如果设定中抽取一个样本计算接受概率

产生[0,1]上随机数u2;如果接受转入(3)。

如果中抽取一个样本计算接受概率

产生区间[0,1]上随机数u3;如果接受转入过程(2)。

(3)重复过程(2),直至达到迭代次数N

1.3 拉丁超立方抽样

采用Metropolis算法和DRAM算法求解多维参数反演问题,Markov Chain容易受到样本初始点的影响,可能在局部最优处达到稳定或者产生难以收敛的问题。

为了保证样本初始点的随机性和均匀性,本研究基于拉丁超立方抽样方法[21]对DRAM算法进行改进。拉丁超立方抽样方法是一种多维分层随机抽样方法,具有良好的散布均匀性和代表性。假设要在m维模型参数α先验范围[Ai,Bi](i=1,2,…,m)内抽取q组样本,具体步骤如下:

(1)把m维模型参数的m个先验范围[Ai,Bi](i=1,2,…,m)都均分成q个小区间,小区间可记为[Aij,Bij](i=1,2,…,m;j=1,2,…,q),总共产生m×q个小区间。

(2)在任一小区间[Aij,Bij]中随机抽取一个数,记为αij,总共产生m×q个数,组成矩阵为

(3)对矩阵Ψmq中行向量[αi1,αi2,…,αiq](i=1,2,…,m)进行随机排序,所得向量记为[βi1,βi2,…,βiq](i=1,2,…,m);由此得到矩阵

(4) 矩阵Φmq中每个列向量是一组样本,共抽取得到q组样本。

1.4 改进型多链DRAM算法

改进型多链DRAM算法具体步骤:

(1)运用拉丁超立方抽样方法,在模型参数先验范围内随机抽取q组初始样本。

(2)分别以q组初始样本作为初始点采用DRAM算法进行迭代运算,得到q条Markov Chains。

(3)对上面q条Markov Chains求平均值作为最终结果。

2 算例应用

2.1 算例概述

均质各向同性地下含水层中,二维地下水水质对流-扩散方程[24-25]可以表述为:

(7)

式中:C为测点(x,y)在t时长的污染物的质量浓度,mg/L;t为污染物排放后开始预测的时长,d;DxDy分别为纵向、横向的弥散系数, m2/d;u为地下含水层水流平均流速, m/d。

对于污染物瞬时点源排放模式,方程的解析解可表示为:

(8)

式中:M为污染物的排放量,g;h为含水层的厚度,m;xy分别为预测点距排放点的纵向、横向距离,m;k为含水层的有效孔隙率。

假设研究区域为均质各向同性地下含水层(建立坐标系,如图1)。含水层厚度为h=1 m, 孔隙率k=0.3,x轴代表含水层中水流的方向, 水流速度为u=5 m/d;纵向弥散系数为1.5 m2/d, 横向弥散系数为0.3 m2/d。待求参数真值:污染物泄漏点坐标为(X0=200 m, Y0=200 m), 污染源强度M=1 000 g, 污染源排放时长T0=110 d。观测点D坐标为(X1=800 m, Y1=215 m)。

图1 算例模型示意图
Figure 1 Sketch of example model

2.2 监测数据

以构建的算例模型的计算值作为观测值, 设定2017年5月1日上午10∶00点作为初始监测时间,其后每隔2 d测量一次,直至2017年5月21日上午10∶00点结束,将研究区水文地质参数代入式(8),可计算得出观测点D的污染物浓度di,以此作为观测点D的污染物的观测值,如表1所示。

表1 观测点D处污染物观测浓度序列
Table 1 Sequence value of pollutant concentration at observation point D

时刻5月1日5月3日5月5日5月7日5月8日5月10日质量浓度/(mg·L-1)0.014 800.061 200.179 60.381 10.594 00.690 7时刻5月12日5月15日5月17日5月19日5月21日质量浓度/(mg·L-1)0.608 00.410 60.215 50.088 900.029 16

2.3 结果及比较

根据先验信息,污染源强度M、污染源位置坐标(X0,Y0)和污染源排放时长T0 4个待求参数的取值范围分别为:400 g≤M≤1 600 g, -200 m≤X0≤600 m, 185 m≤Y0≤215 m, 60 d≤T0≤160 d。运用MATLAB软件编程,对比分析不同算法的求解结果。

2.3.1 Metropolis算法求解结果

采用经典Metropolis算法构建马尔科夫链对模型进行求解,马尔科夫链选取初始点不同,4个待估参数MX0Y0T0的迭代曲线差别很大。以待估参数M为例,随机选取两组不同初始样本,如样本点1:(M,X0,Y0,T0)=(827.44,592.05,190.59,80.77);样本点2:(M,X0,Y0,T0)=(687.50,141.15,213.89,146.97),待估参数M迭代曲线见图2。

图2 基于Metropolis算法的不同初始点模型参数M迭代曲线图
Figure 2 Iterative curves of model parameter M based on Metropolis algorithm with different initial values

由图2(a)可知,在初始样本点为M1=827.44 g Metropolis算法迭代到5 000次时,参数M值逐渐趋于稳定,并最终在M=1 450 g处收敛,但是该值与真值(M=1 000 g)相差较大,误差达45%。另由图2(b)可知,在样本初始点为M2=687.50 g,Metropolis算法迭代到50 000次时,参数M值仍未收敛。因此运用Metropolis算法求解污染源强度时,求解结果受样本初始点的影响较大,容易出现局部最优或者难以收敛的问题。同理,在求解另外3个待求参数X0Y0T0时也会出现类似问题。

2.3.2 多链Metropolis算法求解结果

为防止反演结果的局部最优,构建基于拉丁超立方抽样的多链Metropolis算法求解算例(设定40条链, 单链长度为50 000)。污染源强度M、污染源位置坐标(X0,Y0)和污染源排放时长T0的反演迭代曲线见图3。

图3 基于多链Metropolis算法的模型参数迭代曲线
Figure 3 Iterative curves of model parameters based on multi-chain Metropolis algorithm

由图3可知, 当基于拉丁超立方抽样的多链Metropolis算法迭代到25 000次时,4个参数反演结果均基本在真值处达到稳定且收敛,而且通过程序验证迭代结果不受样本初始点选取的影响,有效解决了经典Metropolis算法受初始点的影响导致不收敛或局部最优的问题,表明该算法具有较强的稳定性。剔除前25 000次不稳定结果,对剩余的25 000次计算结果进行后验统计分析,见表2。

由表2可知,基于拉丁超立方抽样的多链Metropolis算法得出的4个待估参数MX0Y0T0的均值与真值的误差分别为4.36%、0.18%、0.35%、0.08%,中值误差分别为4.30%、0.15%、0.35%、0.06%,表明基于拉丁超立方抽样方法的Metropolis算法可实现计算结果的全局最优,有效提高反演结果的准确性。

表2 基于多链Metropolis算法的模型参数后验统计结果
Table 2 Posterior statistical results of model parameters based on multi-chain Metropolis algorithm

参数均值均值误差/%中值中值误差/%污染源强度M/g956.384.36957.024.30污染源坐标X0/m200.360.18200.290.15污染源坐标Y0/m200.690.35200.690.35泄漏时间距离首次监测时间T0/d109.910.08109.930.06

2.3.3 改进型多链DRAM算法求解结果

多链Metropolis算法虽然有效提高了反演结果的准确性,但是迭代次数需达到25 000次时才能收敛,反演效率相对偏低,为此笔者构建基于拉丁超立方抽样的多链DRAM算法(设定40条链,单链长度为12 000)进行参数求解。 4个参数的反演遍历均值图见图4。

由图4可知,改进型多链DRAM算法迭代到8 000次时,4个参数取值均基本达到稳定,与基于拉丁超立方抽样的多链Metropolis算法(25 000次时迭代稳定且收敛)相比,速率提高68%,并且通过程序验证迭代结果不受样本初始点的影响,表明基于拉丁超立方抽样的DRAM方法具有较高的反演效率及稳定性。

图4 基于改进型多链DRAM算法的模型参数遍历均值图
Figure 4 Ergodic mean plots of model parameters based on improved multi-chain DRAM algorithm

对于改进型多链DRAM算法的反演结果,剔除前10 000次不稳定结果,对剩余的2 000次模型参数进行后验统计分析,见表3。由表3可知,该算法在提高反演效率的前提下,同样可保证反演结果的准确性。

表3 基于改进型多链DRAM算法的模型参数后验统计结果
Table 3 Posterior statistical results of model parameters based on improved multi-chain DRAM algorithm

参数均值均值误差%中值中值误差%污染源强度M/g969.933.011 013.832.62污染源坐标X0/m197.991.01186.770.93污染源坐标Y0/m200.840.42200.380.41泄漏时间距离首次监测时间T0/d109.600.37107.370.35

3 结论

(1)利用Bayesian公式以概率语言解决突发性地下水污染反问题,可有效获取污染源信息(污染源强度、污染源位置和污染源排放时长)。

(2)运用经典Metropolis算法求解污染源信息时,求解结果受样本初始点的影响较大,容易出现局部最优或者难以收敛的问题,反演得到的未知参数估计值误差较大。

(3)基于拉丁超立方抽样的Metropolis算法可实现反演结果的全局最优,有效提高反演结果的准确性,但是效率相对低下。 基于拉丁超立方抽样的DRAM算法在保证反演结果准确性的前提下,可显著提高反演效率,其可靠性和稳定性均优于经典Metropolis算法。

参考文献:

[1] HAARIO H, SAKSMAN E, TAMMINEN J. An adaptive Metropolis algorithm [J]. Bernoulli, 2001, 7(2): 223-242.

[2] ZENG L Z, SHI L S, ZHANG D X, et al. A sparse grid based Bayesian method for contaminant source identification[J]. Advances in water resources, 2012, 37: 1-9.

[3] 陈海洋,腾彦国,王金生,等. 基于Bayesian-MCMC方法的水体污染识别反问题[J]. 湖南大学学报(自然科学版),2012,39(6): 74-78.

[4] 杨海东,肖宜,王卓民,等. 突发性水污染事件溯源方法[J]. 水科学进展, 2014, 25(1): 122-128.

[5] 顾文龙,卢文喜,张宇,等. 基于贝叶斯推理与改进的MCMC方法反演地下水污染源释放历史[J]. 水利学报,2016, 47(6): 772-779.

[6] 朱嵩,毛根海,刘国华,等. 改进的MCMC方法及其应用[J]. 水利学报,2009,40(8):1019-1023.

[7] RUZEK B, KVASNICKA M. Differential evolution algorithm in the earthquake hypocenter location [J]. Pure and applied geophysics, 2001, 158(4): 667-693.

[8] 牟行洋.基于微分进化算法的污染物源项识别反问题研究[J].水动力学研究与进展(A辑),2011,26(1):24-30.

[9] 张双圣, 强静, 刘喜坤, 等. 基于贝叶斯-微分进化算法的污染源识别反问题 [J]. 山东大学学报(工学版),2018,48(1):131-136.

[10] HOLLAND J H. Adaptation in natural and artificial systerms [M]. Ann Arbor, MI: University of Michigan Press, 1975.

[11] 闵涛,周孝德,张世梅,等. 对流-扩散方程源项识别反问题的遗传算法 [J]. 水动力学研究与进展(A辑),2004,19(4): 520-524.

[12] 王秀峰,卢桂章. 系统建模与辨识[M]. 北京:电子工业出版社,2004.

[13] METROPOLIS N, ROSENBLUTH A W, ROSENB-LUTH M N, et al. Equation of state calculations by fast computing machines[J]. The journal of chemical physics, 1953, 21(6):1087-1092.

[14] HASTINGS W K. Monte Carlo sampling methods using Markov chains and their applications[J]. Biometrika, 1970, 57(1):97-109.

[15] TIERNEY L, MIRA A. Some adaptive Monte Carlo methods for bayesian inference[J]. Statistics in medicine, 1999(17/18):2507-2515.

[16] MIRA A. Ordering and improving the performance of Monte Carlo Markov chains[J]. Statistical science, 2001,16(4): 340-350.

[17] HAARIO H, SAKSMAN E, TAMMINEN J. An adaptive Metropolis algorithm[J]. Bernoulli, 2001,7(2):223-242.

[18] HAARIO H, LAINE M, MIRA A, et al. DRAM: Efficient adaptive MCMC [J]. Statistics and computing, 2006, 16(4): 339-354.

[19] 张江江. 地下水污染源解析的贝叶斯监测设计与参数反演方法 [D]. 杭州: 浙江大学, 2017.

[20] VRUGT J A. Markov chain Monte Carlo simulation using the DREAM software package: theory, consepts, and MATLAB implementation [J]. Enviromental modeling & software, 2016,75:273-316.

[21] 戴英彪. 基于拉丁超立方试验设计的事故再现结果不确定性分析[D]. 长沙:长沙理工大学, 2011.

[22] 师黎,王艺. 基于贝叶斯估计的初级视皮层光栅朝向编码研究 [J]. 郑州大学学报(工学版),2012,33(6): 1-4.

[23] 刘厂,赵俊翔,胡海. 基于双贝叶斯估计的动态威胁运动状态估计 [J]. 郑州大学学报(工学版),2017,38(2): 55-60.

[24] 陈崇希,李国敏. 地下水溶质运移理论及模型 [M]. 武汉:中国地质大学出版社,1996.

[25] 郑春苗,BENNETT G D. 地下水污染物迁移模拟[M].2版. 北京:高等教育出版社,2009.

Improved Multi-chain DRAM Algorithm Based on Latin Hypercube Sampling for Inverse Problems of Underground Water Pollution

ZHANG Shuangsheng1,3, QIANG Jing2, LIU Hanhu1, LIU Xikun3, SUN Shaohua4

(1.School of Environment Science and Spatial Informatics, China University of Mining and Technology, Xuzhou 221116, China; 2.School of Mathematics, China University of Mining and Technology, Xuzhou 221116, China; 3.Xuzhou City Water Resource Administrative Office, Xuzhou 221018, China; 4.Shandong Province Urban Water Supply and Drainage Monitoring Center, Jinan 250100, China)

Abstract: Aiming at the problem caused by samples’ initial values with classical MCMC algorithm (Metropolis algorithm), when the inverse problems of underground water pollution were solved by Bayesian statistical methods, an improved multi-chain delayed rejection and adaptive Metropolis(DRAM) algorithm based on latin hypercube sampling was presented. An underground water pollution source identification model was built by coupling Bayesian statistical methods to two-dimensional water quality convection-diffusion equation. An example of a pollutant in the underground aquifer discharged instantly was put forward, and the pollution source information including source’s position, intensity and discharging time was solved by Metropolis algorithm, multi-chain Metropolis algorithm and improved multi-chain DRAM algorithm respectively. The example showed that the inversion results affected by initial values with Metropolis algorithm were locally optimal or difficult to convergence, while the multi-chain Metropolis algorithm could significantly improve the accuracy of the inversion results, the inversion efficiency was relatively low. On the contrary, the improved multi-chain DRAM could significantly improved the inversion efficiency under the condition of accuracy(improved by 68% compared with the multi-chain Metropolis algorithm), realizing double improvement of inversion accuracy and efficiency.

Key words: two-dimensional water quality model; Bayesian-Markov chain Monte Carlo simulation; latin hypercube sampling; delayed rejection and adaptive Metropolis algorithm; pollution source identification

中图分类号: X703

文献标志码:A

doi:10.13705/j.issn.1671-6833.2019.02.016

收稿日期:2019-10-07;修订日期:2019-12-15

基金项目:国家自然科学基金资助项目(51774270);国家水体污染控制与治理科技重大专项基金资助项目(2015ZX07406005)

作者简介:张双圣(1983— ),男,山东昌邑人,中国矿业大学博士研究生,主要从事地下水污染控制研究,E-mail:zhang_shuangsheng@163.com。

文章编号:1671-6833(2020)03-0072-07