Лабораторная работа: Методы оптимизации функций многих переменных
Исследующий поиск начинается в точке х0 , называемой старым базисом. Направления поиска - координатные направления. По каждому направлению поочередно с шагом +t0 (-t0 ) проверяется выполнение условия (2) и в качестве нового базиса берется точка с координатами, полученными в результате удачных шагов из начальной точки по каждому направлению.
Направление от старого базиса к новому задает направление ускорения поиска: в качестве следующей точки минимизирующей последовательности проверяется точка 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 - tk gradf ( 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 - tk gradf ( xk )). Задача минимизации функции φ ( tk ) может быть решена с использованием необходимого условия минимума =0 с последующей проверкой достаточного условия минимума >0 или с использованием численных методов.
Метод сопряженных направлений (Флетчера - Ривса) .
В данном методе используются свойства векторов, сопряженных относительно некоторой матрицы.
Определение. Векторы p и q называются сопряженными относительно матрицы Q , если выполняется равенство pQq =0.
Точки релаксационной последовательности {xk }, k =0,1,… вычисляются по правилу
xk + 1 = xk - tk dk , k =0,1,…;
dk = - gradf ( xk ) + βk- 1 dk - 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 ), где Н - матрица Гессе.
2. Порядок выполнения лабораторной работы
Записать необходимые условия экстремума. Аналитически или используя прикладные пакеты найти стационарные точки.
Проверить выполнение достаточных условий экстремума в найденных стационарных точках. Найти глобальный минимум функции. Оценить обусловленность задачи в точке минимума и овражность графика в окрестности точки минимума. Сделать предварительный вывод о работоспособности избранного численного метода.
Выбрать пакет, в котором будет строиться график. Рекомендации приведены в приложении. Построить график функции, задавая пределы изменения координат с учетом аналитически найденных точек минимума - максимума.
Выбрать несколько начальных точек для реализации численного метода. Задать критерий завершения итерационного процесса. Найти минимум. Сравнить результаты с аналитически найденным значением глобального минимума. Исследовать сходимость алгоритма, фиксируя точность определения минимума, количество итераций метода и количество вычислений минимизируемой функции в зависимости от задаваемой точности поиска. Результатом выполнения данного пункта должны быть выводы об объёме вычислений в зависимости от задаваемой точности и начального приближения.
3. Пример выполнения лабораторной работы [1]
Функция: min, x0 = (-2,-2).