3

我目前正在使用命令行使用 cplex 和 pyomo

pyomo -solver=cplex model.py data.dat

结果保存在文件中results.json。如何使用以前的结果作为起始解决方案再次启动 cplex?

4

1 回答 1

4

如果您想做更高级的事情,例如加载热启动,最好通过编写自己的 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 文档的脚本部分。

于 2017-02-20T16:09:13.733 回答