我在python和Gurobi中是如此新鲜! 最近我开始编码问题,我需要编码这个约束:
for each i and j (while i is not equal to j):
(y[i][j]) * (D[i] - d[i][j])) <= T
此外,我试图从不考虑平等部分开始并写道:
for i in people:
for j in people:
m.addConstr((carpools[i][j])*(distance[i]-distBtw[i][j])) <= 400
但我收到了这个错误:
TypeError: unsupported operand type(s) for *: 'int' and 'NoneType'
答案 0 :(得分:0)
我认为这是一个语法错误。您需要在addConstr中使用<=
:
for i in people:
for j in people:
m.addConstr((carpools[i][j])*(distance[i]-distBtw[i][j]) <= 400,
name = '%s_%s_constraint'%(i, j)
)
FYI你的乘法会给你一个二次约束,这可能使gurobi很难找到解决方案。