Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методы оптимизации. Функции нескольких переменных.doc
Скачиваний:
295
Добавлен:
23.03.2016
Размер:
4.91 Mб
Скачать

3.3.7. Обобщенный градиентный алгоритм

Сходство методов сопряженных градиентов и квазиньютоновских методов дает основание для разработки обобщенного алгоритма, в основе которого лежит использование ряда рассмотренных выше методов. Таким алгоритмом является обобщенный градиентный алгоритм.

Обобщенный градиентный алгоритм

Шаг 1.Задать М — максимальное (допустимое) количество итераций; N — количество переменных; х(0) — начальное приближение к х*; ε — параметр сходимости алгоритма; ε — параметр сходимости для поиска вдоль прямой.

Шаг 2.Положить k = 0.

Шаг 3.Вычислить компоненты f (x).

Шаг 4.Выполняется ли неравенство ||f (x)|| ≤ ε?

Да: печать «сходимость: градиент»; перейти к шагу 13.

Нет:. перейти к следующему шагу.

Шаг 5.Выполняется ли равенство k > М?

Да: печать «окончание поиска: k = M»; перейти к шагу 13.

Нет: перейти к следующему шагу.

Шаг 6.Вычислить s(x).

Шаг 7.Выполняется ли неравенство f (x)s(x) < 0?

Да: перейти к шагу 9.

Нет: положить s(x) = – f (x).

1)В отечественной литературе используется также термин «условный градиент».— Прим. перев.

Печать «возврат: неудачное направление». Перейти к шагу 9.

Шаг 8.Найти такое значение α, при которомf (x+ α+s(x)) → min (используя параметр ε).

Шаг 9.Положить x= x+ αs(x).

Шаг 10.Выполняется ли неравенство f (x) < f (x)?

Да: перейти к шагу 11.

Нет: печать «окончание поиска: нет уменьшения функции», перейти к шагу 13.

Шаг 11.Выполняется ли неравенство≤ε?

Да: печать «окончание поиска: нет продвижения к решению»; перейти к шагу 13.

Нет: перейти к шагу 12.

Шаг 12.Положить k = k +1. Перейти к шагу 3.

Шаг 13.Останов.

В описанном алгоритме можно использовать различные методы путем определения соответствующих направлений поиска на шаге 6. Вычисления, требуемые для реализации того или иного метода, проводятся по приведенным выше формулам. Отдельные шаги алгоритма (в частности, шаг 7) не соответствуют случаю, когда применяется метод Коши, однако алгоритм этого метода подробно рассматривался ранее. Можно было бы ввести в алгоритм процедуру возврата к начальной итерации для метода Флетчера — Ривса, но вместе с тем тесты, включенные в алгоритм, обеспечивают обнаружение любых трудностей, ассоциированных с необходимостью возврата при расчетах по методу сопряженных градиентов.

На шаге 7 можно реализовать дополнительную проверку в соответствии с предложениями Била и Пауэлла относительно возврата к началу алгоритма. Кроме того, повышению эффективности алгоритма способствует включение в шаг 8 дополнительных процедур, предложенных Дэвидоном, Пауэллом и Шэнно. Отметим, что в процессе одномерного поиска следует по возможности избегать точных вычислений; проведенные авторами данной книги эксперименты показывают, что на выполнение операций поиска вдоль прямой тратится весьма значительная часть общего времени счета по программе.

3.3.8. Численная аппроксимация градиентов

При рассмотрении градиентных методов предполагалось, что элементы градиента f (x) и матрицы Гессе ²f (x) можно вычислить с достаточной степенью точности. Новейшие методы обладают такой положительной характеристикой метода Ньютона, как вы­сокая скорость сходимости в окрестности точки минимума, и вместе с тем в них не используются значения вторых производных (²f (x)). Во многих возникающих на практике задачах получение аналитического выражения для градиента оказывается весьма затруднительным. В качестве примера можно рассмотреть случай, когда значения f (х) определяются в результате имитационного эксперимента. Кроме того, даже построение аналитических выражений не исключает возникновения ошибок. Следовательно, хотя бы для того, чтобы иметь возможность проверять аналитические выражения, целесообразно разработать аппроксимационную схему для получения числовых оценок компонент градиента. Простейшим вариантом такой схемы может служить аппроксимация с помощью конечной разности вперед

(3.90)

Такая аппроксимация непосредственно основывается на определении частной производной и при достаточно малых значениях ε дает весьма точные оценки. Выбор ε осуществляется в зависимости от вида f(x), координат точки х и точности (длины машинного слова) ЭВМ. Заметим, что в пределе при стремлении ε к нулю аппроксимация становится точной, однако этот факт не может служить рекомендацией по выбору ε. Величина ε должна выбираться достаточно большой, чтобы числитель выражения (3.90) был отличен от нуля. Если же ε оказывается меньше, чем минимальная точность расчетов на ЭВМ, то числитель обращается в нуль. Кроме того, не следует выбирать величину ε слишком большой, поскольку в этом случае разрывается связь с предельным переходом. Другими словами, при больших ε получаем «хорошие» числа с позиций точности расчетов на ЭВМ, но плохие оценки производных.

За счет дополнительного вычисления значений функции можно повысить точность аппроксимации путем использования центральной конечной разности:

(3.91)

Для одной и той же ЭВМ при заданных f(x), x и ε , такая аппроксимация оказывается более точной, однако при этом используется дополнительное значение функции. Отметим, что в ряде случаев повышение точности аппроксимации за счет дополнительного вычисления значений функции не является оправданным.

Стьюарт [67] предложил процедуру вычисления ε на каждой итерации по методу Дэвидона — Флетчера — Пауэлла. Его метод основан на оценивании ошибки аппроксимации с помощью разности (3.90) и ошибки, обусловленной вычитанием почти равных чисел, которые фигурируют в числителе (3.90) при малых значениях ε. Среди достоинств метода Стьюарта следует отметить то, что он не требует дополнительных вычислений значений функции. Вместе с тем Гилл и др. [68] показали, что указанный метод может приводить к получению неточных оценок ε, и предложили другой подход, в соответствии с которым требуется вычислять 2N значений функции для того, чтобы оценить N значений ε. Однако этот метод необходимо реализовать лишь в начальной точке x(0). Результаты вычислительных экспериментов подтверждают преимущество подхода Гилла, который основывается на уточненных оценках соответствующих ошибок.