Excel求解器说明

Excel Solver explanation

我正在使用 excel 求解器最大化似然函数,这取决于三个参数,位于单元格(例如)A3、A4、A5 中。优化的约束是:

  1. A3 >= 0
  2. A4 > 0
  3. A5 > 0
  4. A4 + A5 < 1

为了管理第四点,我创建了一个包含 A4 和 A5 之和的辅助单元格(比如 A6)。因此,传递给求解器函数的约束变为:

  1. A3 >= 0
  2. A4 > 0
  3. A5 > 0
  4. A6 < 1

尽管如此,有时我还是会出错,因为求解器会尝试使用 A4 和 A5 的值加起来大于 1。换句话说,似乎条件 A6 < 1 (A4 + A5 < 1) 在优化过程中并不总是被考虑。

有谁知道如何处理这个问题?

求解器通过反复试验的方法工作,并尝试根据使您在定义的标准内更接近目标的因素来改进解决方案。对于非线性但仍然相当平滑的问题,可能有解决方案 "wells",如果您可以接近解决方案,则可以对其进行细化以找到更好的解决方案。但是,如果问题不顺利,"near" 个解决方案可能无法引导它找到有效的解决方案,或者可能存在如此微小的解决方案井,以至于求解器永远无法找到有效的解决方案。也可能不存在解决方案。

尝试解决问题的第一步是尝试不同的求解器方法,因为不同的方法更适合不同的解决方案 "surface" 行为。

您也可以尝试通过在要更改的单元格中放置至少一组 "reasonable" 值来为求解器设定种子。

举个简单的例子,设置B1公式为“=A1^2”,然后通过改变A1求出最大可能的B1,约束条件为B1<=16,看起来很简单……应该可以算出很容易得出 A1 = 4。但它仅在 A1 具有正值时才有效。任何负值或从 0 开始给出错误答案 0。