Как интерпретировать вывод Matlab lsqnonlin?

Я подгоняю функцию с различным количеством плавающих параметров, используя lsqnonlin в Matlab.

Первая примерка дает лучшую примерку, повторн 2,5. Matlab отображает:

                                         Norm of      First-order 
 Iteration  Func-count     f(x)          step          optimality
     0         24         17492.8                      9.07e+05
     1         48          143.52       0.106514       2.14e+04      
     2         72         28.1836       0.322225       9.21e+03      
     3         96         8.22318       0.190289            471      
     4        120         4.64683       0.106685            469      
     5        144         4.21385       0.110651           50.6      
     6        168         3.84595       0.132576           6.57      
     7        192         3.80318      0.0785982          0.574      
     8        216         3.80298     0.00714585         0.0696      
     9        240         3.80298    8.99227e-05         0.0165

2-й пример - 3,6. Matlab отображает:

                                         Norm of      First-order 
 Iteration  Func-count     f(x)          step          optimality
     0         38         17492.8                      9.07e+05
     1         76         158.945       0.112853       3.12e+04      
     2        114         31.4081       0.296493       9.11e+03      
     3        152         8.51237       0.171055            627      
     4        190         4.73721       0.485675       1.01e+03      
     5        228         4.25786       0.268581            121      
     6        266         3.82232       0.424431           12.9      
     7        304         3.67385       0.483489             13      
     8        342         3.65582       0.290754             21      
     9        380         3.64699       0.331376           25.9      
    10        418         3.64327       0.237147             16      
    11        456         3.64078       0.236815           13.3      
    12        494         3.63925       0.203176           9.54      
    13        532         3.63819       0.186138           7.32      
    14        570         3.63747       0.165213           5.52      
    15        608         3.63697       0.148463            4.2      
    16        646         3.63663       0.132661           3.17      
    17        684          3.6364       0.118115           2.35      
    18        722         3.63624       0.102959           1.73      
    19        760         3.63616      0.0842739            1.2      
    20        798         3.63612      0.0589477          0.731      
    21        836         3.63611      0.0309845          0.391      
    22        874          3.6361      0.0119255          0.192   

Обе эти фурнитуры: "lsqnonlin stopped because the final change in the sum of squares relative to its initial value is less than the default value of the function tolerance."

Как мне интерпретировать дисплеи для подгонки результата, не глядя на resnorm?

Из того, что я вижу, у 1-й арматуры "норма шага" значительно меньше. Конечный результат f(x) и оптимальность первого порядка аналогичны.

Что означает каждый столбец? Как мне их интерпретировать?

1 ответ

Решение

С сайта математики:

Iteration - номер итерации.

Func Count - Количество оценок функций.

f(x) - Значение функции в точке х.

Norm of step - Размер текущего шага.

First-Order Optimality - Оптимальность первого порядка - это мера того, насколько близка точка x к оптимальной.

На что вы хотите обратить внимание, так это на тот факт, что оптимальность первого порядка -> 0 (и ваши невязки -> 0 тоже), поскольку это будет указывать на то, что ваш алгоритм сходится или сходится к оптимальному решению. При первом подборе вы, должно быть, предоставили более точное предположение или использовали лучший алгоритм, потому что он сходился всего за 9 итераций, тогда как ваше второе приближение сходилось за 22.

Другие вопросы по тегам