gpt4 book ai didi

modelica - Dymola 初始化过程中使用的非线性求解器是什么?

转载 作者:行者123 更新时间:2023-12-04 15:05:43 25 4
gpt4 key购买 nike

我经常遇到如下所示的初始化问题,它说某种非线性求解器会尝试处理这个问题。据我所知,Dymola在得到原始DAE系统的BLT形式后,使用牛顿法求解方程,那么这个非线性求解器到底是什么?

enter image description here

最佳答案

一般来说,Modelica 仿真环境需要做的不仅仅是依赖基于导数优化算法的已知求解器。它可以基于已知的具有自适应能力的求解器来在求解器(线搜索或信赖域方法)之间切换并尝试不同的求解器参数。此外,在初始化问题的高级实例中,需要全局优化策略来避免质量差或发散的局部最优。

推理:存在严重的障碍,可能会阻碍确定初始化问题的半最优解而不一定是最优解:

  • 为了收敛到残差成本函数在数值上接近于零的正确最优值,需要良好的初始猜测

  • 为基础优化成本函数计算的 Jacobian(或 Hessian)通常是奇异的。这里宁愿使用伪反演(不一定由常见的求解器提供)

  • 由于潜在问题的大规模性质,不同变量和初始条件的值将位于较大的数值范围内。这会导致已知标准求解器的数值不稳定。在此,遵循缩放技术(通过对数缩放技术将考虑中的所有优化变量转换为值 1 或更小的值范围)。此类技术通常不由常见的求解器提供,需要从外部应用到成本函数的制定中。

  • 建模者提供的初始条件可能不完整且不一致,模拟环境需要实现严格的启发式算法来为求解器猜测一个好的起始值。

引用资料:

F. Casella and B. Bachmann, On the choice of initial guesses for the Newton-Raphson algorithm, App. Math. & Comp. 2021

关于modelica - Dymola 初始化过程中使用的非线性求解器是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66177323/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com