OpenSolver和Excel的Solver提供了不同的最佳解决方案


1

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

(编辑)该文件主要是对以下问题进行建模:

最大化:30X + 20Y

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


问题应该是自包含的,请包含示例的核心描述,以便人们可以在不下载文件的情况下重现它。
MátéJuhász于

Answers:


1

像你这样的线性方程系统可能有多种解决方案。

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

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

我应该相信哪一个?

总是检查输出,如果两者都在标准范围内并得到相同的最终输出,那么两者都可以是正确的。


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

在此输入图像描述


0

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


1
这就像对现有答案的评论而不是答案本身。最好解释为什么两种解决方案都是正确的,而不仅仅是它们。有关如何编写此示例的示例,请参阅现有答案。
Mokubai
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.