lsqnonlin
|
Страница в процессе разработки. |
Решатель задач нелинейных наименьших квадратов.
| Библиотека |
|
Описание
Функция lsqnonlin решает задачу нелинейных наименьших квадратов вида:
где
Функция вызывается при решении задачи оптимизации optimize или создании настроек оптимизации OptimizeOptions.
Настройки решателя
| Все алгоритмы | |||
|---|---|---|---|
|
Выберите один из алгоритмов: Аргумент |
||
|
Отображать диагностическую информацию о функции, подлежащей минимизации или решению. Доступные варианты: |
||
|
Максимальное изменение переменных для конечно-разностных градиентов (положительный скаляр). Значение по умолчанию — |
||
|
Минимальное изменение переменных для конечно-разностных градиентов (положительный скаляр). Значение по умолчанию — |
||
|
Уровень вывода:
|
||
|
Скалярный или векторный коэффициент размера шага для метода конечных разностей. Если аргумент
где
Скалярное значение |
||
|
Конечные разности, используемые для оценки градиентов, могут быть При оценке обоих типов конечных разностей алгоритм строго соблюдает заданные границы. Так, например, вместо прямой разности может быть использована обратная, чтобы избежать вычисления функции в точке, выходящей за пределы допустимого диапазона. |
||
|
Допуск по значению функции для завершения работы алгоритма; неотрицательный скаляр. Значение по умолчанию — |
||
|
Проверка корректности значений функции. При выборе |
||
|
Максимально допустимое число вычислений функции, заданное как неотрицательное целое число. Значение по умолчанию составляет |
||
|
Максимально допустимое число итераций, заданное как неотрицательное целое число. Значение по умолчанию составляет |
||
|
Допуск для условия остановки по критерию оптимальности первого порядка, заданный как неотрицательный скаляр. Значение по умолчанию — Алгоритм |
||
|
Укажите одну или несколько пользовательских функций, которые функция оптимизации будет вызывать на каждой итерации. Передайте указатель на функцию или массив с указателями на функции. По умолчанию — отсутствие функций ( |
||
|
Построение различных графиков, отражающих ход выполнения алгоритма; можно выбрать готовые графики или создать собственные. В качестве аргумента передается имя, указатель на функцию или массив, содержащий имена или указатели на функции. Для пользовательских функций построения графиков следует передавать указатели на функции. По умолчанию построение графиков отключено (значение Пользовательские функции построения графиков используют тот же синтаксис, что и функции вывода. |
||
|
Если установлено значение |
||
|
Допуск по переменной |
||
|
Типичные значения |
||
|
Опция использования параллельных вычислений для оценки градиентов, заданная одним из следующих значений:
|
||
Алгоритм |
|||
|
Функция умножения на матрицу Якоби, заданная как указатель на функцию. Для крупномасштабных задач со специальной структурой эта функция вычисляет произведение
где Функция
Во всех случаях матрица
|
||
|
Шаблон разреженности якобиана для метода конечных разностей. Установите Используйте Если структура матрицы неизвестна, не задавайте |
||
|
Определяет способ вычисления шага итерации. При использовании варианта по умолчанию ( |
||
Алгоритм |
|||
|
Начальное значение параметра Левенберга — Марквардта — положительный скаляр. Значение по умолчанию — |
||
|
Значение |
||
Информация, выводимая решателем
#
resnorm —
квадрат нормы невязки
неотрицательное вещественное число
Details
Квадрат нормы невязки, возвращаемый как неотрицательное вещественное число. resnorm — это квадрат второй нормы невязки в точке
#
residual —
значение целевой функции в точке решения
массив
Details
Значение целевой функции в точке решения, возвращаемое как массив. В общем случае:
#
exitflag —
причина остановки решателя
целое число
Details
Причина остановки решателя, возвращаемая как целое число.
| Значение | Причина |
|---|---|
|
Функция сошлась к решению |
|
Изменение |
|
Изменение невязки меньше заданного допуска. |
|
Относительная величина направления поиска меньше допуска на шаг. |
|
Количество итераций превысило значение |
|
Функция построения графика или функция вывода остановила работу решателя. |
|
Допустимая точка не найдена. Границы |
#
output —
информация о процессе оптимизации
структура
Details
Информация о процессе оптимизации, возвращаемая как структура с полями:
| Название поля | Содержимое |
|---|---|
|
Мера оптимальности первого порядка. |
|
Количество выполненных итераций. |
|
Количество вычислений функции. |
|
Общее количество итераций метода сопряженных градиентов (PCG) (для алгоритма |
|
Конечное смещение в |
|
Используемый алгоритм оптимизации. |
|
Сообщение о выходе. |
#
lambda —
множители Лагранжа в точке решения
структура
Details
Множители Лагранжа в точке решения, возвращаемые как структура с полями:
| Название поля | Содержимое |
|---|---|
|
Нижние границы, соответствующие |
|
Верхние границы, соответствующие |
#
jacobian —
якобиан в точке решения
вещественная матрица
Details
Якобиан в точке решения, возвращаемый как вещественная матрица. Элемент jacobian(i,j) представляет собой частную производную функции
Для задач, в которых в точке решения имеются активные ограничения, якобиан не пригоден для оценки доверительных интервалов.
Дополнительно
Локальный и глобальный минимум
Details
Локальный минимум функции — это точка, в которой значение функции меньше, чем в соседних точках, но, возможно, больше, чем в какой-либо удаленной точке.
Глобальный минимум — это точка, в которой значение функции меньше, чем во всех остальных допустимых точках.
Алгоритмы решателей пытаются найти локальный минимум. Результатом может стать глобальный минимум.
Мера оптимальности первого порядка
Details
Для задач безусловной оптимизации мерой оптимальности первого порядка является максимальное абсолютное значение компонент вектора градиента (также называемое бесконечной нормой градиента). В точке минимума эта величина должна быть равна нулю.
Для задач с ограничениями мерой оптимальности первого порядка является максимум по индексу
Если
Допуски
Details
Как правило, допуск — это пороговое значение, при превышении которого итерационный процесс решателя останавливается.
-
OptimalityTolerance— определяет допустимое отклонение для меры оптимальности первого порядка. Итерационный процесс завершается, когда значение меры оптимальности первого порядка становится меньше величиныOptimalityTolerance. -
FunctionTolerance— определяет величину последнего изменения значения целевой функции.
Величина градиента
Details
Вектор градиента представляет собой градиент суммы квадратов. Для задач безусловной оптимизации величиной градиента считается максимальное абсолютное значение компонентов вектора градиента (также называемое бесконечной нормой градиента). В точке минимума эта величина должна быть равна нулю.
Для задач с ограничениями величина градиента определяется как максимум по индексу
Если
Размер текущего шага
Details
Размер текущего шага — это величина изменения положения текущей точки на последней итерации.
Локальная сингулярность
Details
Параметр регуляризации Левенберга — Марквардта связан с величиной, обратной радиусу доверительного региона. Он принимает большие значения, когда сумма квадратов значений функции существенно отличается от квадратичной модели.
Когда вычисление якобиана невозможно
Details
Алгоритмы оценивают якобиан целевой вектор-функции методом конечных разностей. Если в процессе вычисления конечной разности расчетная точка вышла за пределы области, где целевая функция определена корректно, то это может привести к получению Inf, NaN или комплексного числа.
Алгоритмы
Методы Левенберга — Марквардта и доверительного региона с отражением основаны на алгоритмах нелинейного метода наименьших квадратов.
-
Алгоритм доверительного региона с отражением по умолчанию представляет собой метод доверительного региона в подпространстве и основан на методе Ньютона с внутренним отражением, описанном в [1] и [2]. Каждая итерация включает приближенное решение большой линейной системы с использованием метода предварительно обусловленных сопряженных градиентов (PCG).
Литература
-
Coleman, T.F. and Y. Li. An Interior, Trust Region Approach for Nonlinear Minimization Subject to Bounds. SIAM Journal on Optimization, Vol. 6, 1996, pp. 418–445.
-
Coleman, T.F. and Y. Li. On the Convergence of Reflective Newton Methods for Large-Scale Nonlinear Minimization Subject to Bounds. Mathematical Programming, Vol. 67, Number 2, 1994, pp. 189–224.
-
Dennis, J. E. Jr. Nonlinear Least-Squares. State of the Art in Numerical Analysis, ed. D. Jacobs, Academic Press, pp. 269–312.
-
Levenberg, K. A Method for the Solution of Certain Problems in Least-Squares. Quarterly Applied Mathematics 2, 1944, pp. 164–168.
-
Marquardt, D. An Algorithm for Least-squares Estimation of Nonlinear Parameters. SIAM Journal Applied Mathematics, Vol. 11, 1963, pp. 431–441.
-
Moré, J. J. The Levenberg-Marquardt Algorithm: Implementation and Theory. Numerical Analysis, ed. G. A. Watson, Lecture Notes in Mathematics 630, Springer Verlag, 1977, pp. 105–116.
-
Moré, J. J., B. S. Garbow, and K. E. Hillstrom. User Guide for MINPACK 1. Argonne National Laboratory, Rept. ANL–80–74, 1980.
-
Powell, M. J. D. A Fortran Subroutine for Solving Systems of Nonlinear Algebraic Equations. Numerical Methods for Nonlinear Algebraic Equations, P. Rabinowitz, ed., Ch.7, 1970.