段国荣,刘元会
(长安大学理学院,西安 710064)
在地下水研究中,经常遇到有关含水层参数的估计问题。含水层参数是否可靠,决定地下水模拟计算的准确性。目前,估计含水层参数的主要方法是通过分析抽水试验数据来确定,在这方面许多专家进行了大量的研究。标准曲线配线法[1],时间定律法(Law of Times)和拐点法(Method of Inflection Point)[2],非线性最小二乘法[3,4],线性回归法[5], Sushil K.S.方法[6,7]和直线图解法[8]等是分析抽水试验数据的传统方法,但这些方法在实际应用中存在局限性。近年来,智能优化算法被广泛用于解决含水层参数问题,例如粒子群优化算法[9],混沌人工鱼群混合算法[10],改进粒子群算法[11], 单纯形-粒子群混合算法[12],单纯形差分进化混合算法[13]和改进的花粉算法[14]等方法。郭建青,李彦等将粒子群优化算法[9]应用于确定含水层参数,但该算法对粒子数目的大小依赖性很强。袁帆,刘元会等利用单纯形-粒子群混合算法[18]计算含水层参数的问题,但计算结果精度不高,且粒子数目的大小和待估参数取值范围对算法的收敛性有较大的影响。粒子群优化算法[9]容易实现,但常出现收敛速度慢,精度差和易陷入局部极值等缺陷。因此,本研究给出紧凑度和调度处理[15]的概念,与粒子群优化算法相结合,组成一种混合策略粒子群优化算法,即PCS-PSO算法。将PCS-PSO算法用于分析无限延伸含水层和直线隔水边界含水层条件下的抽水试验数据,求解含水层参数,试图为含水层参数的确定提供一种新的方法。
为避免粒子群优化算法出现收敛速度慢,精度差,易陷入局部极值等缺陷,本研究对其进行了改进,改进方案如下。
(1)局部搜索。为了避免粒子群优化算法陷入局部最优,提出了紧凑度[16]的概念,若粒子处于紧凑状态时,能够加强粒子群优化算法的局部搜索能力。这里给定紧凑度阈值 来判断相邻两粒子是否处于紧凑状态。
(2)提高算法寻优精度及收敛速度[16]。通过调度处理[16]中调度系数 的控制,能够保证被调度的粒子在全局最优解 周围进行深度搜索,这样既能够提高算法的寻优精度,又能加快算法的收敛速度。
(3)全局搜索[16]。以一定的小概率[16]随机改变粒子的当前位置而不受全局最优解 的影响,由于小概率 的约束,能够提高全局搜索能力。
步骤1:初始化PCS-PSO算法的相关参数。
步骤2:评价各粒子的适应度值,保存粒子个体和全局最优位置及最优解。
步骤3:若t 步骤4:更新各粒子的速度和位置,并更新粒子个体和全局的最优解。 步骤5:将各粒子的适应度值进行降序排列。 步骤6:计算两粒子间适应度差值H,引入小概率p1,若H 步骤7:若pg小于收敛精度e1或pg的误差小于相似度[17], 则k=k+1,否则转到步骤3。 步骤8:输出结果。 (1)各向同性、均质和无限延伸条件下的降深计算公式。根据地下水动力学中的迭加原理,含水层中任一位置的降深可由两部分叠加得到,即虚拟映射注水井注水和抽水实井抽水分别在该位置产生降深的叠加。无限延伸含水层条件下井孔的位置关系[5]如图1所示。 图1 无限延伸含水层条件下井孔的位置Fig.1 The position of well hole under the condition of infinitely aquifer 该情况下,含水层中任一位置的降深表达式为[18]: s=s1+s2=[w(u1)-w(u2)]Q/4 πT (1) 式中:T表示含水层导水系数,m2/min;Q表示抽水流量,m3/min;s1表示实井抽水引起的降深,m;s2表示虚拟映射注水井注水引起的降深,m;w(u1)和w(u2)分别表示相应的抽水实井和虚拟映射注水井的井函数,无量纲,其表达式分别为: (2) 式中:u1和u2为无量纲时间,表达式分别为: (3) 式中:r是抽水实井与观测井的距离,m;r′是虚拟映射井与观测井的距离,m;t为抽水持续时间,min;S为储水系数,无量纲。 由式(2)可知,需要计算广义积分值,利用R.Srivastava的泰斯井函数近似表达式[19]进行计算: W(u)=-Inu+a0+a1u+a2u2+a3u3+a4u4+a5u5,u≤1 (4) (5) 其中的常数值分别为:a0=-0.577 72,a1=0.999 99,a2=-0.249 1,a3=-0.055 19,a4=-0.009 76,a5=0.001 08,b1=8.634 76,b2=18.059 02,b3=8.573 30,c0=3.958 50,c1=21.099 65,c2=25.632 96,c3=9.573 32。 (2)直线隔水边界条件下的降深计算公式。直线隔水边界含水层情况下,而其他条件与无限延伸含水层情况相同,观测孔中水位降深的表达式如下: (6) 应用PCS-PSO算法时,要求待估参数向量 使如下目标函数值达到最小,即: (7) 式中:θ表示待估参数向量;s0i为开始抽水后第i时刻的实际水位降深;si为计算得到的第i时刻的水位降深;在无限延伸含水层条件下,利用式(1)计算水位降深si,在直线隔水边界含水层条件下,利用式(6)计算水位降深si,i=1,2,…,m表示抽水试验中水位降深的观测时间序列号。 经过大量试验分析,本研究选取紧凑度阈值Hth=100,小概率p1=0.05,调度系数c3=1.0,粒子数目维度N=20,最大迭代次数gen=200,根据文献[20],含水层导水系数T∈[2.5,3.5] m2/min,储水系数S∈[0.050,0.070],观测井与虚拟映射井的距离r′∈[100,130] m,收敛精度e1=5×10-5,计算相似度[13]e2=10-9,最优累计次数[13]K=20。 算例1引自文献[14]。无限含水层条件下原始抽水试验的观测数据见表1,试验中抽水流量Q=4.543 m3/min,离抽水主井30.48 m处有一个观测孔。 表1 原始抽水试验数据(无限含水层)Tab.1 The drawdown& time in pumping test in infinitely aquifer 算例2引自文献[13]。直线隔水边界含水层条件下原始抽水试验的观测数据见表2,试验中抽水流量Q=4.581 m3/min, 离抽水主井30.48 m处有一个观测孔。 表2 原始抽水试验数据(直线隔水边界)Tab.2 The drawdown& time in pumping test in the aquifer with impermeable boundary 表3提供了PCS-PSO算法和相关文献中的其他方法在无限延伸含水层条件下求解含水层参数的结果。 表3 不同方法的计算结果Tab.3 The results of different methods 由表3可知,由PCS-PSO算法求解无限延伸含水层条件下的含水层参数时,得到的目标函数值 的精度优于其他方法,计算时间为0.588 s,因此,PCS-PSO算法对含水层参数的计算是可靠的,运算速度也比较快。 采用表2的数据,利用PCS-PSO算法计算得到的3个参数分别为T=3.010 0 m2/min,S=0.066 2,r′=107.744 0 m,目标函数值φ=4.260 1×10-6。为了验证PCS-PSO算法估计含水层参数的可靠性,将估计的3个参数代入式(6),得到水位降深计算值与观测值的对比情况,如图2所示。由图2可知,随时间变化过程中,计算的水位降深与实际观测值非常吻合。因此,PCS-PSO算法同样适用于分析直线隔水边界下的抽水实验数据,对含水层参数的估计是可靠的。 图2 原始数据与计算结果Fig.2 Initial data and the values of calculated 限于篇幅下面只研究无限延伸含水层条件下算法的优点。表4是在其他试验条件不变,令待估参数取值范围的上限为原来的2,4,6和8倍,运行100次程序求计算结果的平均值。收敛率、平均迭代次数、平均最优值及标准差见表4。由表4可知,随着待估参数范围的增大,PSO算法的收敛率快速下降,平均迭代次数快速上升,而PCS-PSO算法的收敛率保持不变,高达100%,平均迭代次数基本保持不变;PCS-PSO算法标准差的精度明显高于PSO算法,由此可知PCS-PSO算法收敛速度较快,收敛性较好,稳定性较好。 表4 待估参数取值范围的上限扩大为原来的不同倍数时PCS-PSO算法与PSO算法的计算结果Tab.4 The calculated results of PCS-PSO and PSO under being estimated parameters from the upper limit of the range expand to the original different multiples 数值实验结果表明:PCS-PSO算法能有效地估计无限延伸含水层和直线隔水边界含水层条件下的含水层参数;PCS-PSO算法计算得到的目标函数值φ(θ)精度优于其他方法;扩大待估参数取值范围对PCS-PSO算法的收敛性及收敛速度影响很小,明显优于PSO算法;PCS-PSO算法估计含水层参数时,精度高,收敛性好,收敛速度快,稳定性好及寻优率高。因此,PCS-PSO算法是分析抽水实验数据,确定含水层参数的有效方法。 □2 目标函数与控制条件
2.1 降深表达式
2.2 目标函数的构成
2.3 算法参数控制
3 算 例
3.1 不同方法计算结果的比较
3.2 直线隔水边界含水层条件下的参数计算
3.3 待估参数取值范围对计算结果的影响
4 结 论