我有一个线性整数规划需要解决。我安装了求解器glpk(感谢这个答案)和pyomo。我编写的代码如下:
from pyomo.environ import *
from pyomo.opt import SolverFactory
a = 370
b = 420
c = 2
model = ConcreteModel()
model.x = Var([1,2], domain=NonNegativeIntegers)
model.Objective = Objective(expr = a * model.x[1] + b * model.x[2], sense=minimize)
model.Constraint1 = Constraint(expr = model.x[1] + model.x[2] == c)
# ... more constraints
opt = SolverFactory('glpk')
results = opt.solve(model)
这将生成名为
results.yaml
的文件解决方案。我有许多问题想使用相同的模型但不同的
a
,b
和c
值来解决。 我想分配不同的值给a
,b
和c
,解决模型,获得model.x [1]
和model.x [2]
的解决方案,并列出a
,b
,c
,model.x [1]
和model.x [2]
。 我阅读了文档,但示例仅将解决方案写入文件,如results.yaml
。有没有办法从代码中访问解决方案值?
谢谢,
for i in model.x: print(model.x[i].value)
,它有效。 - Ken