当Scipy优化器兼容时,它会导致“不等式约束不兼容”

2024-04-25 13:24:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试对一个问题使用scipy.optimize.minimize。我有线性和非线性约束。问题是,当我实际上可以手动找到一个符合约束的值时,极小值抛出“不等式约束不兼容”

我尝试使用不同的初始值并重新运行优化器。结果表明,如果初始值符合约束条件,那么优化器将正常运行。但是,由于我的约束和边界非常复杂,因此很难总是从一个足够好的初始值开始。
下面是我的问题:

1)scipy.optimize是否总是要求初始值“正确”?或者我是否犯了其他错误导致了上述行为

2)如果1),scipy.optimize上是否有任何设置,或者是否有其他对初始值不敏感的优化器可用

很抱歉,我没有复制代码,因为我的原始代码是完全依赖于上下文的,我还不能在一个足够简单的情况下复制它


Tags: 代码错误情况线性scipy手动边界optimize