常用参数自动标定算法总结(单纯形,遗传算法,贝叶斯优化算法,粒子群算法等)

在本推文中介绍四类常用参数自动标定方案,分别是单纯形方案,粒子群方案,遗传算法方案,以及贝叶斯优化ego方案。

单纯形方案实现最简单,适用于少参数,更窄的初始区间

粒子群方案,遗传算法方案适用于多参数更大的空间适合全局搜索

ego方案相比于其余三类方案的优势体现为

EGO使用代理模型(如高斯过程回归)来预测目标函数,极大减少了实际函数评估次数。

EGO在每一步都智能选择下一个最值得评估的位置(如使用EI, Expected Improvement)。

这种探索与利用的动态平衡比GA中盲目变异与交叉更具理论指导。

由于EGO最大化信息利用率,在样本数量极少的情况下表现优于GA

当样本数量少,且有约束优化时适合使用ego方法。例如在评估晶体塑性模型参数时

不过这些优化算法经常容易陷入局部最优,即优化算法在搜索过程中被某个“看起来很好”的解吸引,不断围绕它进行微小改进,最终卡在“局部低谷”而不是“全局最低点”。

一个更合理的做法是:使用粒子群和遗传算法在全局进行初始搜索,使用ego回归分析进行特定区间的优化,最后使用NM方案进行小区间寻找,如果陷入局部最优解,引入全局扰动方案或者爆炸方法跳出局部区间重新搜索即可。

基于该思路编写对应的程序,实现参数的自动标定过程:

这里实现对vpsc模型的复杂参数自动标定;

这里使用相对复杂的镁合金为例,考虑3组滑移+一组孪晶,每个系统考虑tau_0,tau_s,h_0,一共12个待标定参数给定参数区间如下

常用参数自动标定算法总结(单纯形,遗传算法,贝叶斯优化算法,粒子群算法等)的图1

设置最大迭代次数为2000次,初始优化来自粒子群算法,依次是遗传算法单纯形算法和贝叶斯优化算法。

以实验曲线和模拟曲线的标准差作为目标函数:

迭代到270次时,模型与实现误差为0.00563

常用参数自动标定算法总结(单纯形,遗传算法,贝叶斯优化算法,粒子群算法等)的图2

此时陷入局部最优解;算法自动切换为遗传算法

常用参数自动标定算法总结(单纯形,遗传算法,贝叶斯优化算法,粒子群算法等)的图3

目标函数的动图如下:

常用参数自动标定算法总结(单纯形,遗传算法,贝叶斯优化算法,粒子群算法等)的图4

矫正结束后的实验曲线和模拟曲线如下所示:

可以看到两条曲线几乎完全重合

常用参数自动标定算法总结(单纯形,遗传算法,贝叶斯优化算法,粒子群算法等)的图5

可以看到该方案得到的效果非常完美

登录后免费查看全文
立即登录
App下载
技术邻APP
工程师必备
  • 项目客服
  • 培训客服
  • 平台客服

TOP

1
3