Направление от старого базиса к новому задает направление ускорения поиска: в качестве следующей точки минимизирующей последовательности проверяется точка y1=x0+l (x1-x0). Здесь l - ускоряющий множитель, задаваемый пользователем. Если полученная точка является удачной, то она берется в качестве следующей точки для исследования. В противном случае исследование ведется из точки x1.
Метод деформируемого многогранника (Нелдера - Мида).
При решении задачи поиска минимума функции f (x) методом Нелдера-Мида строится последовательность множеств из n+1 точек, которые являются вершинами выпуклого многогранника. На каждом последующем k+1-м шаге из системы точек xi (k), i=1, …,n+1, полученной на k-м шаге, выводится точка xh (k), в которой функция f (x) имеет наибольшее значение (худшая точка). Вместо xh (k) в систему вводится новая точка, выбираемая на отрезке прямой, проходящей через худшую точку и центр тяжести оставшихся nвершин многогранника:
xn+2=
- центр тяжести;xn+3= xn+2+a (xn+2 - xh)
новая точка (“растянутое” отражение наихудшей вершины).
В данном методе строится релаксационная последовательность точек, т.е. таких точек {xk}, k=0,1,…, что f (xk) <f (xk-1),k=0,1,…. Точки последовательности {xk} вычисляются по следующему правилу:
xk+1=xk-tkgradf (xk), k=0,1,… (4)
Начальная точка х0 и начальный шаг t0 задаются пользователем. Величина шага t0 не изменяется до тех пор, пока функция убывает в точках последовательности. Это контролируется путем проверки выполнения условия f (xk+1) - f (xk) <0 (или <-ε). Если условие убывания не выполняется, то величина шага уменьшается, как правило, вдвое, т.е. tk=tk/2.
Метод наискорейшего градиентного спуска
Как и в предыдущем методе, точки релаксационной последовательности {xk}, k=0,1,… вычисляются по правилу (4). Точка х0 задается пользователем; величина шага tk определяется из условия минимума одномерной функции φ (tk) =f (xk-tkgradf (xk)). Задача минимизации функции φ (tk) может быть решена с использованием необходимого условия минимума
=0 с последующей проверкой достаточного условия минимума >0 или с использованием численных методов.Метод сопряженных направлений (Флетчера - Ривса).
В данном методе используются свойства векторов, сопряженных относительно некоторой матрицы.
Определение. Векторы p и qназываются сопряженными относительно матрицы Q, если выполняется равенство pQq=0.
Точки релаксационной последовательности {xk}, k=0,1,… вычисляются по правилу
xk+1=xk-tkdk, k=0,1,…;
dk= - gradf (xk) +βk-1dk - 1; (5)
d0= - gradf (x0);
βk-1=║gradf (xk) ║2∕║gradf (xk-1) ║2.
Точка х0 задается пользователем; величина шага tk определяется из условия минимума функции φ (t) =f (xk-tdk). Задача минимизации одномерной функции φ (tk) может быть решена с использованием необходимого условия минимума
=0 с последующей проверкой достаточного условия минимума >0 или с использованием численных методов. Коэффициент βk-1вычисляется из условия сопряженности направлений dk и dk-1.Строится последовательность точек {xk}, k=0,1,…, таких, что
,k=0,1,… Точки последовательности {xk} вычисляются по правилу xk+1=xk+dk, k=0,1,… Точка х0 задается пользователем с учетом знакопостоянства и невырожденности матрицы Гессе в задаваемой начальной точке и близости выбранной точки к предполагаемой точке минимума. Направление спуска определяется для каждого значения k по формуле dk=-H-1 (xk) gradf (xk), где Н - матрица Гессе.Записать необходимые условия экстремума. Аналитически или используя прикладные пакеты найти стационарные точки.
Проверить выполнение достаточных условий экстремума в найденных стационарных точках. Найти глобальный минимум функции. Оценить обусловленность задачи в точке минимума и овражность графика в окрестности точки минимума. Сделать предварительный вывод о работоспособности избранного численного метода.
Выбрать пакет, в котором будет строиться график. Рекомендации приведены в приложении. Построить график функции, задавая пределы изменения координат с учетом аналитически найденных точек минимума - максимума.
Выбрать несколько начальных точек для реализации численного метода. Задать критерий завершения итерационного процесса. Найти минимум. Сравнить результаты с аналитически найденным значением глобального минимума. Исследовать сходимость алгоритма, фиксируя точность определения минимума, количество итераций метода и количество вычислений минимизируемой функции в зависимости от задаваемой точности поиска. Результатом выполнения данного пункта должны быть выводы об объёме вычислений в зависимости от задаваемой точности и начального приближения.
Функция:
min, x0= (-2,-2).Методы: градиентного спуска и Ньютона.
Решение: 1. Построим график функции и линии уровня (рис.1).
Примечание: при построении графика используется среда MathCAD.
Рис.1. Графики функции
и линий уровня2. Решим задачу минимизации аналитически.
Система для нахождения стационарных точек из условия равенства нулю градиента имеет вид
Если x1x2 =0, тоиз системы следует, что x1 =0 иx2 =0.
Первая стационарная точка - A0 (0; 0).
Если
x1x2 ≠0, то
Подставим х1 в первое уравнение:
Введем замену
:Обозначим
, .Получаем остальные стационарные точки:
; ; ; .Приближенные числовые координаты найденных точек:
А0 (0; 0), А1 (1.068; 1.668), А2 (-1.068; - 1.668), А3 (-0.331; 0.848), А4 (0.331;0.848).
Построим и исследуем на знакоопределенность матрицу Гессе в точках А0,…, А4.
; .H (A0 (0; 0)) =0
(требуется дополнительное исследование точки).