2017-02-19 127 views
1

我目前使用与命令行pyomo CPLEX使用如何用cplex热启动pyomo?

pyomo -solver=cplex model.py data.dat

结果保存在文件results.json英寸 如何使用先前的结果作为初始解决方案再次启动cplex?

回答

2

如果你想做更高级的事情,比如加载warmstart,最好通过编写你自己的Python脚本来开始使用Pyomo。在你的情况,这可能是这样的:

from pyomo.environ import * 

# import the module that contains your model 
import model 

# load the data 
instance = model.model.create_instance('data.dat') 

# create a solver 
cplex = SolverFactory("cplex") 

# solve the first time (tee=True prints the cplex output) 
status = cplex.solve(instance, tee=True) 
assert str(status.solver.termination_condition) == 'optimal' 

# solve the model a second time and create a warmstart file for cplex 
status = cplex.solve(instance, warmstart=True, tee=True) 

看到网上Pyomo文档的scripting部分获得更多关于这一点。