| |
|
全局优化(GOpt)模块
HYDRUS历史上实现了Marquardt-Levenberg类型的参数估计技术 [Šimůnek and Hopmans, 2002],用于根据测量的瞬态或稳态水流和/或运移数据反演估计土壤水力 [Hopmans et al., 2002] 和/或溶质运移及反应 [Šimůnek et al., 2002] 参数。
GOpt模块包含三种全局优化算法:
- 粒子群优化(PSO)[Kennedy and Eberhart, 1995; Shi and Eberhart, 1998]
- 综合学习粒子群优化(CLPSO)[Liang et al., 2006]
- 基于梯度的综合学习粒子群优化(G-CLPSO)[Brunetti et al., 2022c]
1. 粒子群优化(PSO)
PSO是一种无梯度搜索策略,基于社会心理学隐喻,涉及群Sp [-]中相互交互以达到最优状态的个体 [Kennedy and Eberhart, 1995; Shi and Eberhart, 1998]。第j个粒子的位置Xj是一个向量,其分量是校准参数的值,使用以下方程更新:
(参见技术手册中的公式9.3)
其中Vj是第j个粒子的速度,ω是平衡群局部和全局搜索能力的惯性权重[-],U是从0和1之间的均匀分布中采样的随机数[-],φp和φg分别为认知系数和社会系数[-],Xjbest是第j个粒子记录的最佳位置[-],gbest是整个群中记录的最佳位置[-]。关于如何设置Sp、ω、φp和φg的初步指导可在Pedersen [2010]中找到。然而,这些参数应根据具体的校准问题进行适配。PSO算法推荐用于低至中等维度的反问题(例如,<20个参数)。
2. 综合学习粒子群优化(CLPSO)
CLPSO试图解决在多模态高维问题中使用PSO时观察到的早熟收敛问题 [Liang et al., 2006]。该算法使用了一种不同的学习策略,保留了群中的个体行为,并在不同维度上提出不同的运动方式。第j个粒子在第i维度的运动描述如下:
(参见技术手册中的公式9.4)
其中Vj,i和Xj,i分别是第j个粒子第i个参数的速度和位置;ω是随着迭代次数增加而减小的惯性权重,以利于开发[-];Ui是从0和1之间的均匀分布中采样的随机数[-];c是学习参数,通常设置为1.4995[-];pbest_fj,i定义了粒子j应该跟随哪个粒子的最佳位置。pbest_fj,i可以是任何粒子(包括自身)对应维度的最佳位置,该决策取决于概率Pc,称为学习概率 [Liang et al., 2006]。为粒子j的每个维度生成一个随机数。如果该数字低于Pcj,则对应维度基于锦标赛选择过程向其他粒子学习;否则,它将向自身学习。学习过程持续监控。如果某个粒子在特定迭代次数(即刷新间隔)m [-]内停止改进,则重新分配该粒子学习的样本。关于如何设置Sp和m的指导可在Liang et al. [2006]和Brunetti et al. [2022]中找到。CLPSO学习策略的主要优势在于所有粒子都可以潜在地用于引导其他个体的搜索方向,并且这种学习过程可以针对粒子的每个维度有所不同。由于其高探索能力,CLPSO应适用于高维反问题(即>20个参数),特别是当参数之间存在高度相关性时。
3. 基于梯度的综合学习粒子群优化(G-CLPSO)
G-CLPSO通过将CLPSO与Marquardt-Levenberg算法混合来增强其开发能力 [Brunetti et al., 2022]。具体来说,首先使用CLPSO进行NL次迭代,然后从群中选择一个随机个体rand,并将其作为Marquardt-Levenberg局部搜索的起点。如果计算的适应度值低于对应的个体最佳值pbest,则将pbest替换为局部搜索找到的最优值。通过这样做,新的pbest可以进入CLPSO锦标赛选择过程,并在不显著降低群多样性的情况下改善整个群。主要优势在于可以在每NL次迭代后在不同起点启动ML算法。关于如何设置Sp和m的指导可在Brunetti et al. [2022]中找到。尽管G-CLPSO可用于任何反问题建模,但如果参数之间存在非常高的相关性,则需谨慎使用,因为Marquardt-Levenberg在这些条件下可能表现出非常缓慢的收敛速度。
4. 初始化、边界处理和收敛准则
初始化和边界处理:群粒子使用多维随机均匀分布初始化,该分布跨越用户定义的上界ub和下界lb参数范围。为了将关于校准参数的先验知识(例如实验估计值)纳入优化中,GUI中定义的初始估计值包含在初始群体中。所有粒子的初始速度设置为零。如果在优化过程中,提出的粒子位置超出允许的参数空间,则其速度设置为零,并使用反射边界处理技术来修复其位置。
(参见技术手册第151页的公式)
在优化过程中,识别出不收敛的模型运行,并为目标函数Ф赋予一个大的正值。为了提高优化土壤水力参数时的收敛性,最小允许压力水头值hCritA被内部调整,使相应的含水量至少比残余含水量高0.005。尽管如此,强烈建议通过正确实现数值模型(即适当的时间和空间离散化、物理上合理的参数界限)来最小化不收敛运行的数量。
收敛准则:群在用户定义的最大迭代次数内演化,之后算法停止。在迭代过程中,如果所有粒子的个体最佳位置pbest和整个群记录的全局最佳位置gbest在过去Nc次连续迭代中同时表现出可忽略的改进,则认为算法已收敛。如果两次连续迭代之间目标函数的相对变化低于用户定义的容差rtol,则认为改进是可忽略的。一旦达到最大迭代次数或正式实现收敛,所得到的全局最优值将用作Marquardt-Levenberg算法的起点,该算法进一步优化过程并计算其他重要指标(如相关矩阵、置信区间)。
参考文献
- Brunetti, G., C. Stumpp, and J. Šimůnek, Balancing exploitation and exploration: A novel hybrid global-local optimization strategy for hydrological model calibration, Environmental Modeling Software, 150, 105341. doi: 10.1016/j.envsoft.2022.105341, 2022.
- Kennedy, J., and R. Eberhart, Particle swarm optimization, in: Proceedings of ICNN'95 - International Conference on Neural Networks, IEEE, pp. 1942-1948, doi: 10.1109/ICNN.1995.488968, 1995.
- Liang, J. J., A. K. Qin, P. N. Suganthan, S. Baskar, Comprehensive learning particle swarm optimizer for global optimization of multimodal functions, IEEE Trans. Evol. Comput., 10, 281-295, doi: 10.1109/TEVC.2005.857610, 2006.
- Shi, Y., and R. Eberhart, A modified particle swarm optimizer, IEEE Int. Conf. Evol. Comput. Proceedings, IEEE World Congr. Comput. Intell. (Cat. No.98TH8360) 69-73, doi: 10.1109/ICEC.1998.699146, 1998.
在线留言
尊敬的客户朋友,如您有任何意见建议,请通过下表反馈给我们,我们会尽快与您联系。
|
|
|