使用Pyomo和PyInstaller

问题描述 投票:1回答:1

是否可以使用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构建一个独立的可执行文件来执行相同的操作吗?

python python-3.x pyinstaller pyomo
1个回答
0
投票

最后添加以下代码,这模拟了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"

© www.soinside.com 2019 - 2024. All rights reserved.