首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Scipy中SLSQP最小化算法的时间和空间复杂度是多少?

Scipy中SLSQP最小化算法的时间和空间复杂度是多少?
EN

Stack Overflow用户
提问于 2017-12-05 18:21:17
回答 1查看 376关注 0票数 1

我指的是the following methodscipy.optimize.minimize(method=’SLSQP’)

我听说in this issue说“COBYLA和SLSQP所需的内存在变量数量上是二次的。这些算法不适合解决这么大的问题”:

有人知道这个算法的确切的时间和空间复杂度吗?

EN

回答 1

Stack Overflow用户

发布于 2021-10-05 14:14:01

是的,看起来内存复杂度是O(n^2),其中n是问题维度(变量的数量)。这是由于B矩阵( Hessian矩阵的近似),因为SLSQP是一种准牛顿法。

关于时间复杂度,我还发现this related issue提出了O(n^3)的时间复杂度。但我并不信服。根据我所发现的,SciPy实现是旧FORTRAN代码的包装器,给出的参考是:

序列二次规划的软件包。(Wiss.Berichtswesen d.DFVLR,1988)。

一个计算缺陷将来自LDL decomposition,但只需要低密度脂蛋白分解的秩1更新,这可以在O(n^2)中实现。

O(n^3)可能仍然来自于用于解决二次子问题的算法。我仍然在阅读参考资料,所以我可以在这里编辑我的回复。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47651192

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档