如何将 JuMP 约束设置为等于数组中的值?
How do I set JuMP constraint equal to value in an array?
我在向我的模型添加约束时遇到困难
从 i = 1 到 N of X_ijk = W_jk 的所有 j,k
的总和
这是我试过的方法
N = 10
W = [11 12 13 14 15 16 17;
9 14 21 21 12 15 16;
14 21 15 13 12 17 17]
for i in 1:N
@constraint(m, sum(x[i, j, k] for j in 1:3, k in 1:7 ) >= W[j, k])
end
但我一直收到错误消息,告诉我 j 和 k 未定义。
感谢您提供正确语法方面的帮助
你需要:
@constraint(m, [j=1:3, k=1:7], sum(x[i, j, k] for i in 1:N) >= W[j, k])
文档:https://jump.dev/JuMP.jl/stable/manual/constraints/#Constraint-containers
我在向我的模型添加约束时遇到困难
从 i = 1 到 N of X_ijk = W_jk 的所有 j,k
的总和这是我试过的方法
N = 10
W = [11 12 13 14 15 16 17;
9 14 21 21 12 15 16;
14 21 15 13 12 17 17]
for i in 1:N
@constraint(m, sum(x[i, j, k] for j in 1:3, k in 1:7 ) >= W[j, k])
end
但我一直收到错误消息,告诉我 j 和 k 未定义。 感谢您提供正确语法方面的帮助
你需要:
@constraint(m, [j=1:3, k=1:7], sum(x[i, j, k] for i in 1:N) >= W[j, k])
文档:https://jump.dev/JuMP.jl/stable/manual/constraints/#Constraint-containers