Вот игрушечный код, с которым я играю:
from __future__ import division
from pyomo.environ import *
from pyomo.opt import SolverStatus, TerminationCondition
import sys
sys.path.append('/Library/gurobi810/mac64/lib/gurobipy')
model = ConcreteModel()
model.x = Var([1,2], domain=NonNegativeReals)
model.obj = Objective(expr = 2*model.x[1] + 3*model.x[2])
model.constraint1 = Constraint(expr = 3*model.x[1] + 4*model.x[2] >= 1)
opt = SolverFactory('gurobi_direct')
#opt = SolverFactory('gurobi')
#opt = SolverFactory('gurobi', solver_io='python')
rr = opt.solve(model)
Приведенный выше код работает нормально, либо с solver_io = 'python', либо с 'gurobi_direct' только в Python 2.7виртуальная среда .Когда я работаю в виртуальной среде Python 3.6, я получаю следующую ошибку:
pyutilib.common._exceptions.ApplicationError: No Python bindings available for <class 'pyomo.solvers.plugins.solvers.gurobi_direct.GurobiDirect'> solver plugin
Означает ли это, что Pyomo не поддерживает эти параметры для Python 3.6?Любая работа вокруг?