2017-07-09 38 views
-3

我是一个用python进行编码的新人,但我不得不为我的学校完成与原油调度问题有关的一个项目工作。当我运行代码时,我收到一条错误消息整数目标不可迭代错误

int objective not iterable error。

我的代码:

enter code here 
#Here my code: 
#indeces: 
T = [1,2,3,4,5,6] 
M = [1,2,3,4] 
#Continuous Variables: 
for m in M: 
    for c in C: 
     for t in T: 
      VCT[m,c,t] = model.addVar(obj = 0.0, vtype = 'C', name = 'VCT[%s,%s,%s]'%(m,c,t)) 
for m in M: 
    for t in T: 
     V[m,t] = model.addVar(obj = 0.0, vtype = 'C' , name = 'V[%s,%s]'%(m,t)) 
#Constraints: 
for m in M: 
    for t in T: 
     model.addConstr(V[m,t], '=', quicksum(VCT[m,c,t] for c in C)) #28 
     model.addConstr(V[m,t], '<=',V_U[m]) #29 
     model.addConstr(V[m,t], '>=',V_L[m]) #30 
+2

程序中没有c列表,你可以改变它并添加满程序请 – Apaws

+0

并提供回溯 –

+0

'C = ['SAL','OMN'] – TaZa

回答

-2

Ofcourse,该错误是有道理....
没有 “C” 阵列 for c in C:如何将这项工作...?我不知道“C”是什么意思!
因此,创建一个名为“C”的数组或删除,如果你不需要的话....你的代码的详细说明将有所帮助..

+0

但我总结c ... quicksum(.....在c C中)。无论如何,我在我的代码中添加了c(用于c中的c),但是我得到了同样的错误。 – TaZa

+0

复制粘贴错误消息...这将有助于:P –