使用PulP时如何从Gurobi求解器中检索当前的最佳解决方案?

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

如果我在gurobi求解器中使用交互式求解器,则可以执行以下操作:

gurobi> m = read('model.mp')
gurobi> m.optimize()
[...]
Found heuristic solution: objective 821425.00000

然后中止并通过以下方式获得当前解决方案:>

gurobi> m.printAttr('X')

我想在纸浆中具有相同的行为。特别是在调用之后:

prob =  pulp.LpProblem(name="MIPProblem", sense=pulp.LpMaximize)
[...]
status = prob.solve(pulp.GUROBI_CMD(msg=True, keepFiles=1))

我想等到找到第一个启发式解决方案/在某个时间间隔后中止,然后获得Gurobi找到的当前最佳解决方案。我该怎么办?

如果我在gurobi求解器中使用交互式求解器,则可以执行以下操作:gurobi> m = read('model.mp')gurobi> m.optimize()[...]找到启发式解决方案:目标821425.00000然后...

python gurobi pulp
1个回答
0
投票

您可以使用pulp.GUROBIpulp.GUROBI_CDM。主要区别在于pulp.GUROBIgurobipy

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