Hi,
I am having trouble writing the following constraint in JuMP
I currently have it written as below but it is not returning the desired output.
@constraints model begin
constraint_1[n in n],
sum(w[i,n,np] for i in Ij for np in 1:length(n) if n <= np <= (n+d) ) <= 1.0
end
where np is nβ
Could someone please assist with the correct syntax?
A simple rule is that everything at the right of the β (universal quantifier, \forall) should be in your constraint_name[...]
clause. so:
@constraints model begin
constraint_1[n in n, j in j],
sum(w[i,n,np] for i in I[j] for np in n:(n+d)) <= 1.0
end
Also, please stop using Sets with lowercase letters and iterate over them with the same lowercase letters, this is bad style.
2 Likes
Noted and thank you. It worked.
odow
March 1, 2021, 7:03pm
4
To clarify why itβs bad style, if you have [n in n, j in j]
instead of [n in N, j in J]
, and you have something in the first constraint like for np in 1:length(n)
, it is using length(n)
and not length(N)
.
3 Likes
I see. i have made the changes and it helped with other errors I was encountering. Thank you