Алгоритм Гольдштайна и Прайса
Можно строить аналогичные алгоритмы, аппроксимируя в процессе поиска не матрицу , а матрицу
. А затем строить обратную к ней. Таким образом, на каждой итерации находится
, где
– оценка
, а матрица
– симметрическая матрица ранга 1, такая, что
удовлетворяет уравнению
. При этом
. (15)
Поскольку в процессе поиска матрица может не быть положительно определенной, следует в процессе поиска использовать ограничительные условия, обеспечивающие положительную определенность такой матрицы. В качестве начального приближения можно выбирать
.
К алгоритмам такого типа относится алгоритм Гольштайна и Прайса, который описывается следующей последовательностью действий и предназначен для минимизации выпуклых функций.
Гольштайн и Прайс использовали не (15), а проводили аппроксимацию матрицы при помощи разностной схемы, основанной на полуфакториальном построении (полуфакториал – произведение n первых четных чисел), а затем проводили обращение матрицы. При этом для оценки
требуется лишь информация о
и
.
На k-м этапе алгоритм выглядит следующим образом. Заранее заданы величины и
.
Вычисляется в качестве аппроксимации матрица
, j-й столбец которой определяется по формуле
,
где для
,
,
– j-й столбец единичной матрицы
размерности
.
– вектор-столбец, определяемый в соответствии с условиями:
, если
или
сингулярна, или
, так что матрица
не является положительно определенной;
– в противном случае.
Заметим, что матрица не обязательно симметрическая матрица, и если
, то предлагаемое направление поиска
и направление градиента
отличаются более чем на 900. Следовательно,
может быть направлено в сторону, в которой
увеличивается.
Для выражения
вычисляется так, чтобы
или
,
. Эти условия нужны для того, чтобы не допускать шагов поиска, которые далеко выходят за область линейного изменения целевой функции в окрестности
, предполагавшуюся при аппроксимации
.
Берется .
Процесс заканчивается, когда .
Параметр следует выбирать так, чтобы матрица
аппроксимировала
как можно ближе. Величина
выбирается так, чтобы значения
,
, представляли собой монотонно убывающую последовательность; чем ближе значение
к 1/2, тем в большей степени
приближается к своему минимуму по
.