我正在尝试对问题使用scipy.optimize.minimize。我同时具有线性和非线性约束。问题是,当我实际上可以手动找到适合约束的值时,最小化器会抛出“不相等约束不兼容”。
我尝试使用不同的初始值并重新运行优化器。事实证明,如果初始值符合约束条件,则优化器将正常运行。但是,由于我的约束和界限非常复杂,因此始终以足够好的初始值开始很难。
所以这是我的问题:
1)scipy.optimize是否总是要求初始值“正确”?还是我犯了导致上述行为的其他错误?
2)如果是1),则scipy.optimize上是否有任何设置,或者是否有其他对初始值不敏感的优化器?
对不起,我没有复制代码,因为我的原始代码非常依赖于上下文,并且在足够简单的情况下我无法复制它。