Python で CVXOPT または CVXPY を使用して最適化の問題を解決する必要がありますが、問題が発生しました。目的関数は
Minimize Sum(a*x^2+b/x)
以下の制約を受ける
5 <= x < 40;
sum(v/d)<=T
ここで、vectorx
は最適化変数で、ベクトルa
とb
は指定され、T
は指定されたスカラーです。
Python で CVXOPT または CVXPY を使用して最適化の問題を解決する必要がありますが、問題が発生しました。目的関数は
Minimize Sum(a*x^2+b/x)
以下の制約を受ける
5 <= x < 40;
sum(v/d)<=T
ここで、vectorx
は最適化変数で、ベクトルa
とb
は指定され、T
は指定されたスカラーです。
次のコードは、CVXPY の問題を解決します。私はあなたが意味していると思いましsum(x/d) <= T
た。
# Replace these with your values.
n = 2
a = 2
b = 2
d = 2
T = 1000
import cvxpy as cvx
x = cvx.Variable(n)
obj = cvx.sum_entries(a*x**2 + b*cvx.inv_pos(x))
constr = [5 <= x,
x <= 40,
cvx.sum_entries(x/d) <= T]
prob = cvx.Problem(cvx.Minimize(obj), constr)
prob.solve()