我有一个问题,我必须根据以下限制最小化某个数量
其中是一个已知常数。、和是我们有经验曲线的非线性函数。(如果对解决方案有帮助,这些曲线近似为对数)。、和是要达到其最佳值的权重。我知道基本的线性编程技术。但是,我无法将约束 #2 减少为线性约束。
欢迎任何帮助。如果需要任何进一步的细节,请告诉我。
PS:- 使用 Python 的解决方案将是理想的。但是,我对方法而不是使用的语言/包更感兴趣。
更新(回应评论): -
- 不依赖于
我有一个问题,我必须根据以下限制最小化某个数量
其中是一个已知常数。、和是我们有经验曲线的非线性函数。(如果对解决方案有帮助,这些曲线近似为对数)。、和是要达到其最佳值的权重。我知道基本的线性编程技术。但是,我无法将约束 #2 减少为线性约束。
欢迎任何帮助。如果需要任何进一步的细节,请告诉我。
PS:- 使用 Python 的解决方案将是理想的。但是,我对方法而不是使用的语言/包更感兴趣。
更新(回应评论): -
这只是一个 NLP(非线性编程)模型。您可以将其重写为:
摆脱分裂总是一个好主意。如果我们可以假设,那么稍微不同的公式可能看起来像:
您可以通过(使用和的最佳值)。
选择合适的求解器很大程度上取决于细节(例如,您是在寻找全局解决方案还是本地解决方案)。我经常尝试使用几个不同的求解器来求解,因为预测最好的求解器并不容易。如果您可以在 AMPL 或 GAMS 中表达模型,您可以在NEOS尝试不同的求解器。