Ответ 1
Я думаю, что пакет trust
, который оптимизирует область доверия, сделает трюк. Из документации trust
вы видите, что
Эта функция выполняет минимизацию или максимизацию функции используя алгоритм области доверия... (он принимает) функцию R, которая вычисляет значение, градиент и гессиан функции, которая должна быть минимизирована или максимизируется, и возвращает их как список со значением компонентов, градиент и гессиан.
На самом деле, я думаю, он использует тот же алгоритм, который используется fminunc
.
По умолчанию
fminunc
выбирает крупномасштабный алгоритм, если вы поставляете градиент в весе и установите GradObj на 'on' с помощью optimset. Этот алгоритм является подпространственным методом доверительных областей и основывается на внутренне отражающий метод Ньютона, описанный в [2] и [3]. каждый итерация включает приближенное решение большой линейной системы используя метод предустановленных сопряженных градиентов (PCG). Видеть Алгоритм большой шкалы fminunc, методы Trust-Region для нелинейных Метод минимизации и условного конъюгатного градиента.