我想在cvxpy下的优化问题中添加许多约束。在matlab中,我可以通过添加一行subject,然后使用for循环来生成约束。我如何在cvxpy中做同样的工作,因为在cvxpy中没有‘受制于’的概念。有什么建议吗?
发布于 2017-05-26 19:46:33
在Python中,constraints是一个列表。您可以使用for循环来附加/扩展它,如下所示( CVXPY functions使其更容易)。
import cvxpy as cvx
samples = 10
x = cvx.Variable(samples)
y = range(1, samples+1)
constraints = []
for i in xrange(samples):
constraints += [
y[i] * x[i] <= 1000,
x[i] >= i
]
objective = cvx.Maximize(cvx.sum_entries(x))
prob = cvx.Problem(objective, constraints)
prob.solve()
print x.valuehttps://stackoverflow.com/questions/42706519
复制相似问题