首页 > 解决方案 > OpenMDAO:比较 ScipyOptimizeDriver 和 pyOptSparseDriver 的优缺点是什么?

问题描述

我在OpenMDAO 中学到:如何处理 ExplicitComponent.compute 中的非收敛点?pyOptSparseDriver 能够以 ScipyOptimizeDriver 不支持的方式处理失败点。我也了解可用的优化方法有所不同。这两个驱动程序之间还有哪些其他重要区别?

特别是,在每个中使用“SLSQP”优化器时有什么区别?

标签: openmdao

解决方案


我没有量化 SLSQP 在 scipy 和 pyopt-sparse 中的详细实现差异。但是,我知道它们确实有些不同。Scipy 优化器的线搜索在尊重边界约束方面比 pyopt-spars 的版本更好。

主要区别在于 ScipyOptimizerDriver 与 SciPy 中的预编译优化器一起使用。另一方面,您必须自己编译 pyopt-sparse。


推荐阅读