我正在使用Python中的PuLP库来解决MILP问题。我已经成功地使用默认解决程序(CBC)运行了我的问题。现在,我想将PuLP与另一个求解器(GLPK)结合使用。如何用GLPK建立PuLP?
我在网上做了一些研究,发现了关于如何使用GLPK的信息(例如lp_prob.solve(pulp.GLPK_CMD())),但是还没有找到关于如何使用GLPK (或任何其他解决该问题的方法)来实际设置PuLP的信息,这样它就可以找到我的GLPK安装。我已经分别安装了GLPK (但我没有将它添加到PATH环境变量中)。
我运行了命令pulp.pulpTestAll()
并得到:
Solver <class 'pulp.solvers.GLPK_CMD'> unavailable
我知道,我应该得到一个“通过”,而不是“不可用”,才能使用它。
发布于 2019-03-27 16:40:52
在更详细地阅读了代码和测试了一些东西之后,我终于找到了如何在PuLP中使用GLPK,而不改变PuLP包本身中的任何东西。
您需要将路径作为参数传递给GLPK_CMD,如下所示(用glpsol替换):
lp_prob.solve(GLPK_CMD(path = 'C:\\Users\\username\\glpk-4.65\\w64\\glpsol.exe')
你也可以通过这样的方式传递选项。
lp_prob.solve(GLPK_CMD(path = 'C:\\Users\\username\\glpk-4.65\\w64\\glpsol.exe', options = ["--mipgap", "0.01","--tmlim", "1000"])
https://stackoverflow.com/questions/55362984
复制相似问题