完全用Python解决LP

时间:2018-12-06 20:16:15

标签: python algorithm linear-programming

我有一个具有整数约束的LP,我想使用Python进行精确算术求解。 实际上,我只需要一个可行的观点。

编辑:“精确算术”在这里表示无穷枚举数和分母的有理数。

以前的尝试:

  • Firefox console提到了qsoptex,但是当我尝试导入它时,我得到了ImportError: libqsopt_ex.so.2: cannot open shared object file: No such file or directory,尽管据我所知,我给出了该库的路径。
  • SoPlex可在控制台上运行,但找不到Python界面。
  • PySCIPOpt(Find exact solutions to Linear Program)是SCIP的Python接口,包括SoPlex,但我看不到如何调用特定的求解器(具有特定的选项)。
  • cdd(https://github.com/SCIP-Interfaces/PySCIPOpt)做某事,称其为LP,但我不知道他们实际上解决了哪个问题。

速度只是一个中等问题。我的较大实例具有约500个具有框约束和40个等式的变量,但涉及的数字可能很大。

1 个答案:

答案 0 :(得分:1)

也许我错过了要点,但是任何您想要有理数解的线性编程任务实际上都是一个整数编程问题,您需要为所有分数变量找到LCD(最小公分母),并同意以后使用的分子作为整数。因此,看来问题只需要重新制定,就可以找到确切的解决方案。