Цель Gurobi со значениями словаря Python
Я использую Gurobi 6.0 с Python 2.7. Мне любопытно узнать, позволяет ли Гуроби целевой функции иметь значения из словаря с индексами переменных решения. Прикрепление кода:
from gurobipy import *
d = {
(0, 0): 0,
(0, 1): -5,
(1, 0): 4,
(1, 1): 2,
(2, 0): 0,
(0, 2): 10
}
m = Model()
x = m.addVar(vtype=GRB.INTEGER)
y = m.addVar(vtype=GRB.INTEGER)
m.update()
m.addConstr(x + y <= 2)
m.setObjective(d[(x, y)], GRB.MAXIMIZE)
m.optimize()
print m.objVal
print x.x
print y.x
Ответ на модель был
-5,0
-0,0
-0,0
что явно не имеет смысла, потому что max (d [(x, y)]) = 10 происходит при x = 0 и y = 2 согласно заданным данным. В чем здесь проблема? Допускает ли Гуроби такие словарные ссылки? Это даже разрешено?