- •Лабораторная работа № 2
- •1.2. Градиентные методы.
- •1.2.1. Общая схема градиентного спуска.
- •1.2.2. Градиентный метод с постоянным шагом.
- •1.2.3. Градиентный метод с дроблением шага.
- •1.2.4. Метод наискорейшего спуска.
- •1.3.Метод покоординатного спуска.
- •1.4. Методы оврагов
- •1.4.1. Общая характеристика.
- •1.4.2. Эвристические алгоритмы.
- •1.4.3. Овражные методы (Метод Гельфанда).
- •1.5. Методы прямого поиска.
- •1.5.1. Общая характеристика.
- •1.5.2. Метод конфигураций (метод Хука и Дживса).
- •1.5.3.Метод симплекса.
- •1.5.4. Метод деформируемого симплекса (метод Нелдера – Мида).
- •2.Задание на лабораторную работу.
- •3. Варианты задания.
1.3.Метод покоординатного спуска.
Желание уменьшить объем вычислительной работы, требуемой для осуществления одной итерации метода наискорейшего спуска, привело к созданию методов покоординатного спуска.
Пусть - начальное приближение. Вычислим частную производную по первой координате и примем:
где е1={1,0,…,0}T – единичный вектор оси х(1). Следующая итерация состоит в вычислении точки х2по формуле:
где е2={0,1,0,…,0}T – единичный вектор оси х(2)и т. д.
Таким образом, в методах координатного спуска мы спускаемся по ломанной, состоящей из отрезков прямых, параллельных координатным осям.
х(2)
Спуск по всем координатам составляет одну «внешнюю» итерацию. Пусть к – номер очередной внешней итерации, а j– номер той координаты, по которой производится спуск. Тогда формула, определяющая следующее приближение к точке минимума, имеет вид:
где к=0,1,2,… ; j=1,2,…n.
В координатной форме формула выглядит так:
После j=n счетчик числа внешних итераций к увеличивается на единицу, аj принимает значение равное единице.
Величина шага квыбирается на каждой итерации аналогично тому, как это делается в градиентных методах. Например, еслик=постоянно, то имеем покоординатный спуск с постоянным шагом.
Схема алгоритма покоординатного спуска с постоянным шагом
Шаг 1.
При к=0 вводятся исходные данные х0,1,.
Шаг 2.
Осуществляется циклический поj(j=1,2,…,n) покоординатный спуск из точки хkn по формуле:
Шаг 3.
Если||x(k+1)n – xkn||1, то поиск минимума заканчивается, причем:
Иначе к=к+1 и переходим к шагу 2.
Если же шагквыбирается из условия минимума функции:
то мы получаем аналог метода наискорейшего спуска, называемый обычно методом Гаусса – Зейделя.
Схема метода Гаусса – Зейделя
Шаг 1.
При к=0 вводятся исходные данные х0,1.
Шаг 2.
Осуществляется циклический поj (j=1,2,…,n) покоординатный спуск из точки хkn по формулам:
где kn+j-1 является решением задачи одномерной минимизации функции:
Шаг 3.
Если||x(k+1)n – xkn||1, то поиск минимума заканчивается, причем:
Иначе к=к+1 и переходим к шагу 2.
1.4. Методы оврагов
1.4.1. Общая характеристика.
Градиентные методы медленно сходятся в тех случаях, когда поверхности уровня целевой функции f(x) сильно вытянуты. Этот факт известен в литературе как «эффект оврагов». Суть эффекта в том, что небольшие изменения одних переменных приводят к резкому изменению значений функции – эта группа переменных характеризует «склон оврага», а по остальным переменным, задающим направление «дно оврага», функция меняется незначительно. На рисунке изображены линии уровня «овражной» функции траектория градиентного метода характеризуется довольно быстрым спуском на «дно оврага», и затем медленным зигзагообразным движением в точку минимума.
Существуют различные подходы для определения точки минимума функции f(x)в овражной ситуации. Большинство из них основаны на эвристических (то есть интуитивных, не обоснованных строго) соображениях. Их можно применять в ситуациях, когда применение более совершенных методов невозможно или нецелесообразно, например, значение целевой функции вычисляется со значительными погрешностями, информация о ее свойствах недостаточна, и т. д. Эти методы просты в реализации и довольно часто применяются на практике, позволяя в ряде случаев получить удовлетворительное решение задачи.