【问题标题】:Scipy minimization with multiple constraints具有多个约束的 Scipy 最小化
【发布时间】:2018-04-17 18:37:17
【问题描述】:

我想使用 scipy 模块 scipy.optimize 最小化函数,但我正在努力理解如何实现我的约束。我的解决方案的极值点必须正好是零和一,所以现在我要强加

cons = ({'type': 'eq',
          'fun' : lambda x: x[0]}, #the initial point is 0
        {'type': 'eq',
          'fun' : lambda x: x[-1]-1.}) #the final point is 1

但我还需要每隔一个点严格高于 0 且小于 1。如何为数组的所有其他点显式添加此进一步约束?

【问题讨论】:

    标签: python optimization scipy constraints


    【解决方案1】:

    如果 x[0] 必须为 0 且 x[-1] 必须为 1,则您并未优化它们,因此您可以在函数中将它们设置为这些值,无需添加约束。对于其他点,使用 bounds keyword 设置 0 和 1 之间的界限:

    bounds=[(0, 1), (0, 1),...]

    【讨论】:

    • 谢谢,正是我想要的。
    猜你喜欢
    • 2013-12-03
    • 1970-01-01
    • 2016-05-27
    • 1970-01-01
    • 2020-08-08
    • 1970-01-01
    • 2020-03-22
    • 1970-01-01
    • 2014-08-14
    相关资源
    最近更新 更多