运行 cplex/pyomo 求解器找到了一个解决方案,它报告保存在某个地方,尽管我在记笔记之前关闭了,但在网络上找不到它的存储位置。
运行窗口,有人吗?
我不知道pyomo 究竟是如何调用 CPLEX 将解决方案存储在磁盘上的。CPLEX 的缺省行为是将解决方案存储在当前工作目录中。解决方案文件的后缀为.sol
或.mst
。
>默认情况下,pyomo 会在您调用 pyomo 的目录中生成一个 JSON 文件 results.json。
让我以pyomo中的总线为例:
在文件 pyomobus.py
from pyomo.environ import *
model = ConcreteModel()
model.nbBus = Var([40,30], domain=PositiveIntegers)
model.OBJ = Objective(expr = 600*model.nbBus[40] + 480*model.nbBus[30])
model.nbKids = Constraint(expr = 40*model.nbBus[40] + 30*model.nbBus[30] >= 300)
然后在该目录中,如果您键入
pyomo solve pyomobus.py --solver=cplex
您将在该目录中获得一个文件结果.json,您将在其中读取
"Problem": {},
"Status": "optimal",
"Variable": {
"nbBus[30]": {
"Value": 2.0
},
"nbBus[40]": {
"Value": 6.0
}