首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python库cvxpy中的非严格不等式

Python库cvxpy中的非严格不等式
EN

Stack Overflow用户
提问于 2019-12-18 21:17:34
回答 1查看 725关注 0票数 2

我正在使用cvxpy库来解决一些特殊的优化问题。

代码语言:javascript
复制
import cvxpy as cp
import numpy as np

(...)

prob = cp.Problem(
    cp.Minimize(max(M*theta-b)) <= 45,
    [-48 <= theta, theta <= 48])

(这里M和b是某些numpy矩阵。)

有趣的是,它尖叫着:

代码语言:javascript
复制
NotImplementedError                       Traceback (most recent call last)
<ipython-input-62-0296c965b1ff> in <module>
      1 prob = cp.Problem(
----> 2     cp.Minimize(max(M*theta-b)) <= 45,
      3     [-10 <= theta, theta <= 10])

~\Anaconda3\lib\site-packages\cvxpy\expressions\expression.py in __gt__(self, other)
    595         """Unsupported.
    596         """
--> 597         raise NotImplementedError("Strict inequalities are not allowed.")

NotImplementedError: Strict inequalities are not allowed.

但是,对我来说,他们看起来一点也不严格.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-18 21:20:48

先前的问题中的原因相同(尽管这样的事情很难分析)。

您需要明确地向cvxpy请求它是max 函数--这一直是必需的/推荐的

代码语言:javascript
复制
cp.Minimize(max(M*theta-b))

应该是

代码语言:javascript
复制
cp.Minimize(cp.max(M*theta-b))

除了下面是之外,基本上只能使用cvxpy中的函数。

CVXPY函数求和一个表达式中的所有条目。内置Python和应该用于将表达式的列表相加在一起。

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

https://stackoverflow.com/questions/59400094

复制
相关文章

相似问题

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