【发布时间】:2019-08-07 02:11:59
【问题描述】:
这是我正在玩的玩具代码:
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 的这些选项?有什么解决办法吗?
【问题讨论】:
标签: python-3.x gurobi pyomo