How does "fminunc" try new point ?

1 visualización (últimos 30 días)
Naoya Inoue
Naoya Inoue el 12 de Jun. de 2018
Comentada: Alan Weiss el 12 de Jun. de 2018
I want to minimize "residual sum of squares" by "fminunc". Solver returns local minimum found message. But, During iterative calculation, Solver returns "User objective function returned NaN; trying a new point...". Algorithm of "fminunc" is quasi-newton, so I understand that Solver does not necessarily converge to "local minimum point". I want to know "How does this solver try new point ? ".

Respuesta aceptada

Alan Weiss
Alan Weiss el 12 de Jun. de 2018
I believe that, when a solver takes a step and encounters NaN, it then tries a step in the same direction but half the length. If that fails again, then the same direction but halved again. After a few tries it will give up, but I don't know how many tries it takes.
Alan Weiss
MATLAB mathematical toolbox documentation
  2 comentarios
Naoya Inoue
Naoya Inoue el 12 de Jun. de 2018
Thank you for answering. Please tell me more two question. First:Is there any rationale for "fminunc" to halve the step? Second:If "fminunc" given up, how does he find new point ? Is it randam ? I try object by "fminunc". There was a big change in iterations. An example is shown below. """command window iteration Func-count f(x) Step-size First-order optimality 51 939 0.0059922 0.5 0.000562 \User objective function returned NaN; trying a new point... 52 1039 0.00599184 0.000669653 0.000729 """
Alan Weiss
Alan Weiss el 12 de Jun. de 2018
I do not know of a reference, but I believe that this is a typical way to handle failures in a line search.
"Give up" means that fminunc stops iterating after too many evaluation failures and returns the best answer it can. It does not proceed further.
I could not easily read you iterative display. If you want us to be able to read and comment on it, please mark it up with the {} Code button.
Alan Weiss
MATLAB mathematical toolbox documentation

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Solver Outputs and Iterative Display en Help Center y File Exchange.

Productos


Versión

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by