与手动执行Solver相比,VBA中的Excel Solver提供了不同的结果

时间:2019-02-07 11:48:07

标签: excel vba solver

我不知道这是否是因为GRG非线性算法造成的,因为'ayhan'在这里指出:Excel Solver Not Providing Consistent Results

但是当我使用以下代码从宏执行规划求解时:

SolverReset
SolverOk SetCell:="$F$5", _
         MaxMinVal:=3, _
         ValueOf:=valor, _
         ByChange:="$D$2", _
         EngineDesc:="GRG Nonlinear"
SolverSolve userFinish:=True

我没有得到与手动执行相同的结果

Difference

我知道差异很小。这正常吗?

谢谢

1 个答案:

答案 0 :(得分:0)

两种方法的求解器的起始值必须完全相同,因为求解器没有使用精确的数学方法,而是使用了基于数值迭代的方法来寻找解决方案。因此,如果启动参数不同,它可能会得出不同的结果。