我在gurobi优化中有下面的代码,其中M是一个二进制变量。我正在使用.X属性访问变量的值,但当我运行代码时,会出现以下错误:
AttributeError: b"Index out of range for attribute 'X'"
如果删除.X属性,代码运行时不会出现任何错误,但对于M variable中所有元素的if语句,即使值不是“1.0”,它也会返回true。我猜它检查变量M中是否存在一个值,即使它是“0.0”,这个值也是真的。在本例中,在运行完代码后,我尝试在控制台中运行同一段代码(for loops),但没有这样的错误!。你知道吗
for s in range(S)
for t in range(T):
for f in range(F):
if M[(a,t,f)].X == 1:
print(M[(a,t,f)].X)
我注意到问题是,在优化模型之前,我试图访问变量M的值。。你知道吗
相关问题 更多 >
编程相关推荐