fminunc stopped because it exceeded the function evaluation limit, options.MaxFunEvals = 100 (the default value).
6 次查看(过去 30 天)
显示 更早的评论
what should i do if i get this kind of error?
0 个评论
采纳的回答
George Papazafeiropoulos
2014-5-22
Define the objective function by setting its output with the opposite sign as follows:
function F=fun(x)
F=-0.2662*x.^6+48.19*x.^5-3424.2*x.^4+121708*x.^3-2*exp(6)*x.^2+2*exp(7)*x-6*exp(7);
F=-F;
end
The initial function that you presented does not have a finite global minimum, it tends to -inf due to the negative sign at the coefficient of x^6. The above function has a global minimum, so if you execute the code:
x0 = 1;
[x, fval] = fminunc (@fun,x0)
then the algorithm finds the local minimum of -fun, therefore the global maximum of fun.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Nonlinear Optimization 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!