我今天尝试了fmincon,我发现它收敛速度非常快。它给出的价值也是完美的。我不知道怎么做。一开始它迈出了一大步。我有两个参数初始化为1和1.突然它跳转到将值更改为51和130.这是一个很大的进步。我不确定这是不是一件好事。但我想知道fmincon如何快速收敛并找到价值。任何见解
答案 0 :(得分:1)
MALTAB的fmincon
函数实现了几种算法。因此,收敛的速度将取决于目标函数和约束的类型。 MATLAB将自动选择最佳算法。在大多数情况下,它将是内点算法。这些算法系列因其在很大问题上的快速收敛而闻名。大多数内点算法需要大约20-60步才能收敛。最重要的是,我的答案是肯定的 - 如果fmincon
收敛得非常快,这绝对正常。如果您需要更多详细信息,请使用Display
将'iter-detailed'
选项设置为optimset
,您将看到每次迭代的详细信息。