我对古罗比的Python有点陌生
有人能解释我做错了什么吗? 我得到了一个错误:
gurobipy.GurobiError: Unable to convert argument to an expression
当我打电话给:
m.setObjective(obj,GRB.MINIMIZE)
我的代码:
m = Model("mdp")
v=[]
for i in range(nblignes):
for j in range(nbcolonnes):
v.append(m.addVar(vtype=GRB.CONTINUOUS, lb=0, name="v%d" % (i*10+j)))
m.update()
c=np.zeros((len(v),1), dtype=numpy.int)
for k in range(len(v)):
c[k]= 1
obj = LinExpr();
obj =0
for j in range(nbcolonnes*nblignes):
obj += c[j] * v[j]
print "OBJ",obj
m.setObjective(obj,GRB.MINIMIZE)
数组'c'是一个len(v)x1矩阵,所以当你加上c[j]*v[j]时,你用一个gurobi Var对象乘以一个向量。可以通过将数组声明为1-D来解决此问题
或者用
^{pr2}$或者更简洁
相关问题 更多 >
编程相关推荐