是否可以使用PyInstaller创建一个独立的可执行文件来解决Pyomo的优化问题?
例如,我可以解决优化问题
min_x {2*x_1 + 3*x_2 : x_i >= 0, 3*x_1 + 4*x_2 >= 1}
通过使用以下内容创建文件“concreteProblem.py”
from __future__ import division
from pyomo.environ import *
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)
然后进入
pyomo solve --solver=glpk concreteProblem.py
在命令行中。
我可以使用PyInstaller构建一个独立的可执行文件来执行相同的操作吗?
最后添加以下代码,这模拟了pyomo命令行工具的功能。
if __name__ == '__main__':
from pyomo.opt import SolverFactory
import pyomo.environ
opt = SolverFactory("glpk")
results = opt.solve(model)
#sends results to stdout
results.write()
print("\nDisplaying Solution\n" + '-'*60)
pyomo_postprocess(None, model, results)
然后你可以使用>>> pyinstaller concreteProblem.py -F --add-binary "C:\Users\USERNAME\AppData\Local\Continuum\anaconda2\Library\bin\glpsol.exe"