Fmincon seems to repeat a number of times the same set of variables
2 次查看(过去 30 天)
显示 更早的评论
Hello,
Fmincon seems to repeat a number of times the same set of variables.
Not sure why?
What am I missing?
Thanks
0 个评论
回答(1 个)
Steven Lord
2022-7-14
Do you mean that fmincon appears to evaluate your function at the same point multiple times?
If so, how have you checked that those points are actually identical? It's possible they are very slightly different, but that the change is small enough that it doesn't change how the number is displayed in the default format if that's how you're checking. In the example below a and b are displayed the same but their stored values are not the same.
a = pi
b = a + 1e-6
b == a % false
2 个评论
Torsten
2022-7-14
In a fixed point x0, fmincon has to calculate the gradient of your objective function and the Hessian numerically. This is done via finite-difference approximations:
df/dxi @ x=x0 ~ (f(x10,...,xi0+h,...,xn0) - f(x10,...,xi0,...,xn0))/h
So if you output x in your objective function with a limited number of digits, you might get the impression that
(x10,...,xi0+h,...,xn0) equals (x10,...,xi0,...,xn0).
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!