OpenSolver 和 Excel 的 Solver 给出了不同的最优解

OpenSolver 和 Excel 的 Solver 给出了不同的最优解

我注意到 OpenSolver 和 Solver 往往会给出不同的解决方案。例如,在示例中文件由此提供网站OpenSolver 给出的答案是 X=0 和 Y=60,而 Solver 的答案是 X=10 和 Y=45。知道为什么会这样吗?我应该相信哪一个?

(编辑)该文件本质上是对以下问题的建模:

最大化:30X+20Y

受制于:
5X+2Y <= 140
3X+2Y <= 120
X,Y >= 0

答案1

像您这样的线性方程组可能有多个解。

这两种类型的求解器都使用近似算法来寻找解决方案,而不是使用分析方法来求解方程,这意味着:

  • 如果有多个最优输出,它们的选择也取决于初始参数(以 x=0 启动 Excel 求解器,y=0 将保留在那里,不会变为 10、45)
  • 这些算法可以以不同的方式实现,它们可能会找到不同的结果

我应该相信哪一个?

始终检查输出,如果两者都符合标准且结果最终输出相同,则两者都是正确的。


如果你想得到一个明确的答案,你需要使用适当的工具,例如Wolfram Alpha

在此处输入图片描述

答案2

这两个 Excel 解决方案都满足约束条件,并且具有相同的目标值,因此都是正确的。

相关内容