【问题标题】:Using IntVar in OR-tools在 OR 工具中使用 IntVar
【发布时间】:2020-07-10 15:12:34
【问题描述】:

我正在使用 Google 的 OR-Tools 来解决一个问题,其中一些决策变量是整数,而另一些只是正实数。

对于pywraplpglp.Solver.GLOP_LINEAR_PROGRAMMING,我将整数决策变量设置为IntVar,而其他变量为NumVar

在运行求解器时,我得到了一个可行的解决方案,但该解决方案为应该为整数的变量提供了非整数值。 如果我想获取整数值,我应该如何使用 IntVars ?

【问题讨论】:

  • 并非如此,该链接中的问题在于所有变量都是二进制的。在我的问题中,我只需要几个是整数,而其他是小数。
  • 这是同样的问题,你不能在 GLOP 中使用整数或二进制变量。
  • 但它确实允许我声明 IntVars。那是什么意思呢?
  • 我不认为它可以像 *_LINEAR_PROGRAMMING 那样工作尝试将你的模型更改为 *_MIXED_INTEGER_PROGRAMMING 并且它会工作

标签: python optimization linear-programming or-tools


【解决方案1】:

刚刚遇到同样的问题。下面的代码对我有用:

    solver = pywraplp.Solver("", pywraplp.Solver.CBC_MIXED_INTEGER_PROGRAMMING)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-08
    • 1970-01-01
    • 1970-01-01
    • 2016-06-05
    • 1970-01-01
    相关资源
    最近更新 更多