使用Gurobi的预解算函数用于pyomo模型

时间:2018-02-13 11:12:21

标签: python mathematical-optimization gurobi pyomo

使用gurobipy,我可以通过调用presolve函数来预先解决混合整数线性优化模型,即

model = read('milp.mps')
model.presolve().

我想将Gurobi的预处理步骤应用于某个模型,该模型仅受混合整数非线性pyomo模型的线性约束的限制(并随后修改预先解决的线性模型,使用gurobipy或者pyomo,在使用Gurobi解决之前。

示意图,我想要做的是:

linear_model = deactivate_nonlinear_constrs(pyomo_model) #This step is clear
presolved_model = presolve_with_gurobi(linear_model),

其中presolved_model可以是gurobipy,也可以是pyomo模型。

最简单的方法是将pyomo模型转换为gurobipy模型,即gurobi_model = convert_to_gurobi(pyomo_model)

我知道pyomo和Gurobi紧密耦合,即我可以使用Gurobi解决pyomo模型

opt = SolverFactory('gurobi')
opt.solve(model),

因此我认为gurobipy模型和pyomo模型之间也存在一些直接联系。

1 个答案:

答案 0 :(得分:1)

我也有同样的问题,transferred your question into the pyomo forum

答案:到目前为止,pyomo中不包含此功能。