【发布时间】:2020-05-03 00:04:33
【问题描述】:
我正在使用 python,但 s.t. 有问题。部分和最后 2 行, 我不知道我做错了什么,我找不到任何类似的例子, 我将不胜感激任何帮助 。
import numpy as np
c = np.array([[3,11,18,22],
[12,3,12,19],
[15.5,13,5,7],
[24,18,8,5]])
C=1200
O=[400,460,400,702]
D=[260,400,500,802]
L=4
K=4
import cvxpy as cp
x = cp.Variable((K, L), PSD=True)
obj = cp.Maximize(cp.sum(cp.entr(x)))
#error
constraints = [(for j=1 to L: cp.sum(x[:j])==O[j]), (for i =1 to L: cp.sum(x[:j])==D[i]), (cp.sum(cp.sum(c @x)) == C)]
prob = cp.Problem(obj, constraints)
opt_val = prob.solve(solver=cp.CVXOPT, verbose=True)
print("\nThe optimal value is:", prob.value)
print('\nThe optimal solution is:')
print(x.value)
【问题讨论】:
-
在 Python 中编程时不能使用 Julia 语法。它们是两种不同的编程语言。
-
但是 cvxpy 不是用于 python 吗?
-
是的,但是您复制的代码是 Julia 代码,而不是 Python 代码。复制粘贴是邪恶的,但你把它带到了新的高度。
-
但它是用 cvxpy 样本编写的
-
请出示参考资料。
标签: python mathematical-optimization entropy cvxpy