Azzera filtri
Azzera filtri

How does "fminunc" try new point ?

1 visualizzazione (ultimi 30 giorni)
Naoya Inoue
Naoya Inoue il 12 Giu 2018
Commentato: Alan Weiss il 12 Giu 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 ? ".

Risposta accettata

Alan Weiss
Alan Weiss il 12 Giu 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 Commenti
Naoya Inoue
Naoya Inoue il 12 Giu 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 il 12 Giu 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

Accedi per commentare.

Più risposte (0)

Prodotti


Release

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by