Градиентные методы оптимизации

Метод релаксации

Алгоритм метода заключается в отыскании осевого направления, вдоль которого целевая функция уменьшается наиболее сильно ( при поиске минимума). Рассмотрим задачу безусловной оптимизации

Градиентные методы оптимизации - student2.ru (3.6)

Для определения осевого направления в начальной точке Градиентные методы оптимизации - student2.ru поиска из области Градиентные методы оптимизации - student2.ru определяются производные Градиентные методы оптимизации - student2.ru , Градиентные методы оптимизации - student2.ru , по всем независимым переменным. Осевому направлению соответствует наибольшая по модулю производная Градиентные методы оптимизации - student2.ru .

Пусть Градиентные методы оптимизации - student2.ru – осевое направление, т.е. Градиентные методы оптимизации - student2.ru .

Если знак производной Градиентные методы оптимизации - student2.ru отрицательный, функция Градиентные методы оптимизации - student2.ru убывает в направлении оси, если положительный – в обратном направлении:

Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru

В точке Градиентные методы оптимизации - student2.ru вычисляют Градиентные методы оптимизации - student2.ru . По направлению убывания функции Градиентные методы оптимизации - student2.ru производится один шаг, определяется Градиентные методы оптимизации - student2.ru и в случае улучшения критерия шаги продолжаются до тех пор, пока не будет найдено минимальное значение по выбранному направлению. В этой точке вновь определяются производные по всем переменным, за исключением тех, по которой осуществляется спуск. Снова находится осевое направление наиболее быстрого убывания Градиентные методы оптимизации - student2.ru , по которому производятся дальнейшие шаги и т.д.

Эту процедуру повторяют до тех пор, пока не достигается оптимальная точка, при движении из которой по любому осевому направлению дальнейшего убывания Градиентные методы оптимизации - student2.ru не происходит. На практике критерием окончания поиска служит условие

Градиентные методы оптимизации - student2.ru (3.7)

которое при Градиентные методы оптимизации - student2.ru превращается в точное условие равенства нулю производных в точке экстремума. Естественно условие (3.7) может быть использовано только в том случае, если оптимум лежит внутри допустимой области изменения независимых переменных Градиентные методы оптимизации - student2.ru . Если же оптимум попадает на границу области Градиентные методы оптимизации - student2.ru , критерий типа (3.7) непригоден и вместо него следует применять положительности всех производных по допустимым осевым направлениям.

Алгоритм спуска для выбранного осевого направления может быть записан так

Градиентные методы оптимизации - student2.ru (3.8)

где Градиентные методы оптимизации - student2.ru -значение варьируемой переменной на каждом шаге спуска;

Градиентные методы оптимизации - student2.ru - величина k+1 шага, которая может изменяться в зависимости от номера шага:

Градиентные методы оптимизации - student2.ru – функция знака z;

Градиентные методы оптимизации - student2.ru - вектор точки, в которой последний раз производилось вычисление производных Градиентные методы оптимизации - student2.ru ;

Знак “+” в алгоритме (3.8) принимается при поиске max I, а знак “-” – при поиске min I.Чем меньше шаг h., тем больше количество вычислений на пути движения к оптимуму. Но при слишком большой величине h вблизи оптимума может возникнуть зацикливание процесса поиска. Вблизи оптимума необходимо, чтобы выполнялось условие h<E, где E- заданная погрешность определения положения оптимума.

Простейший алгоритм изменения шага h состоит в следующем. В начале спуска задается шаг Градиентные методы оптимизации - student2.ru , равный например, 10% от диапазона d; изменения Градиентные методы оптимизации - student2.ru с этим шагом производится спуск по выбранному направлению до тез пор, пока выполняется условие для двух последующих вычислений

Градиентные методы оптимизации - student2.ru

При нарушении условия на каком-либо шаге направление спуска на оси изменяется на обратное и спуск продолжается из последней точки с уменьшенной вдвое величиной шага.

Формальная запись этого алгоритма следующая:

Градиентные методы оптимизации - student2.ru (3.9)

В результате использования такой стратегии ша спуска будет уменьшатся в районе оптимума по данному направлению и поиск по направлению можно прекратить, когда Градиентные методы оптимизации - student2.ru станет меньше E.

Затем отыскивается новое осевое направление начальный шаг для дальнейшего спуска, обычно меньший пройденного вдоль предыдущего осевого направления. Характер движения в оптимуме в данном методе показан на рисунке 3.4.

Градиентные методы оптимизации - student2.ru

Рисунок 3.5 – Траектория движения к оптимуму в методе релаксации

Улучшение алгоритма поиска по данному методу может быть достигнуто путем применения методов однопараметрической оптимизации. При этом может быть предложена схема решения задачи:

Градиентные методы оптимизации - student2.ru

Шаг 1. Градиентные методы оптимизации - student2.ru – осевое направление, Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru ; Градиентные методы оптимизации - student2.ru , если Градиентные методы оптимизации - student2.ru ;

Градиентные методы оптимизации - student2.ru , если Градиентные методы оптимизации - student2.ru ;

Градиентные методы оптимизации - student2.ru

или

Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru

Шаг 2. Градиентные методы оптимизации - student2.ru – новое осевое направление; Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru

и т.д.

Метод градиента

В этом методе используется градиент функции Градиентные методы оптимизации - student2.ru . Градиентом функции Градиентные методы оптимизации - student2.ru в точке Градиентные методы оптимизации - student2.ru называется вектор, проекциями которого на координатные оси являются частные производные функции по координатам (рис. 6.5)

Градиентные методы оптимизации - student2.ru

Рисунок 3.6 – Градиент функции Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru .

Направление градиента – это направление наиболее быстрого возрастания функции Градиентные методы оптимизации - student2.ru (наиболее крутого “склона” поверхности отклика). Противоположное ему направление (направление антиградиента) – это направление наибыстрейшего убывания Градиентные методы оптимизации - student2.ru (направление наискорейшего “спуска” величин Градиентные методы оптимизации - student2.ru ).

Проекция градиента Градиентные методы оптимизации - student2.ru на плоскость переменных перпендикулярна касательной к линии уровня Градиентные методы оптимизации - student2.ru , т.е. градиент ортогонален к линиям постоянного уровня целевой функции Градиентные методы оптимизации - student2.ru (рис. 3.6).

Градиентные методы оптимизации - student2.ru

Рисунок 3.7 – Траектория движения к оптимуму в методе

градиента

В отличие от метода релаксации в методе градиента шаги совершаются в направлении наибыстрейшего уменьшения (увеличения) функции Градиентные методы оптимизации - student2.ru .

Поиск оптимума производится в два этапа. На первом этапе находятся значения частных производных Градиентные методы оптимизации - student2.ru по всем переменным Градиентные методы оптимизации - student2.ru , которые определяют направление градиента в рассматриваемой точке. На втором этапе осуществляется шаг в направлении градиента при поиске максимума Градиентные методы оптимизации - student2.ru или в противоположном направлении – при поиске минимума.

Если аналитическое выражение Градиентные методы оптимизации - student2.ru неизвестно, то направление градиента определяется поиском на объекте пробных движений. Пусть Градиентные методы оптимизации - student2.ru начальная точка. Дается приращение Градиентные методы оптимизации - student2.ru величина Градиентные методы оптимизации - student2.ru , при этом Градиентные методы оптимизации - student2.ru Градиентные методы оптимизации - student2.ru . Определяют приращение Градиентные методы оптимизации - student2.ru и производную Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru

Аналогично определяют производные по остальным переменным. После нахождения составляющих градиента пробные движения прекращаются и начинаются рабочие шаги по выбранному направлению. Причем величина шага тем больше, чем больше абсолютная величина вектора Градиентные методы оптимизации - student2.ru .

При выполнении шага одновременно изменяются значения всех независимых переменных. Каждая из них получает приращение, пропорциональное соответствующей составляющей градиента

Градиентные методы оптимизации - student2.ru , Градиентные методы оптимизации - student2.ru (3.10)

или в векторной форме

Градиентные методы оптимизации - student2.ru , (3.11)

где Градиентные методы оптимизации - student2.ru – положительная константа;

“+” – при поиске max I;

“-” – при поиске min I.

Алгоритм градиентного поиска при нормировании градиента (деление на модуль) применяется в виде

Градиентные методы оптимизации - student2.ru ; (3.12)

Градиентные методы оптимизации - student2.ru (3.13)

Градиентные методы оптимизации - student2.ru определяет величину шага по направлению градиента.

Алгоритм (3.10) обладает тем достоинством, что при приближении к оптимуму длина шага Градиентные методы оптимизации - student2.ru автоматически уменьшается. А при алгоритме (3.12) стратегию изменения Градиентные методы оптимизации - student2.ru можно строить независимо от абсолютной величины коэффициента.

В методе градиента каждый разделяется один рабочий шаг, после которого вновь вычисляются производные, определяется новое направление градиента и процесс поиска продолжается (рис. 3.5).

Если размер шага выбран слишком малым, то движение к оптимуму будет слишком долгим из-за необходимости вычисления Градиентные методы оптимизации - student2.ru в очень многих точках. Если же шаг выбран слишком большим, в район оптимума может возникнуть зацикливание.

Процесс поиска продолжается до тех пор, пока Градиентные методы оптимизации - student2.ru , Градиентные методы оптимизации - student2.ru , не станут близки к нулю или пока не будет достигнута граница области задания переменных.

В алгоритме с автоматическим уточнением шага величину Градиентные методы оптимизации - student2.ru уточняют так, чтобы изменение направления градиента Градиентные методы оптимизации - student2.ru в соседних точках Градиентные методы оптимизации - student2.ru и Градиентные методы оптимизации - student2.ru улучшающей последовательности составляло Градиентные методы оптимизации - student2.ru Градиентные методы оптимизации - student2.ru (рис 3.7)

Градиентные методы оптимизации - student2.ru

Рисунок 3.8 – Изменение направления градиента в соседних

точках

Должно быть Градиентные методы оптимизации - student2.ru

Градиентные методы оптимизации - student2.ru

где Градиентные методы оптимизации - student2.ru – скалярное произведение векторов.

Градиентные методы оптимизации - student2.ru ;

Градиентные методы оптимизации - student2.ru ;

Градиентные методы оптимизации - student2.ru ;

Если Градиентные методы оптимизации - student2.ru ;

если Градиентные методы оптимизации - student2.ru ;

если Градиентные методы оптимизации - student2.ru ,

где Градиентные методы оптимизации - student2.ru .

Критерии окончания поиска оптимума:

Градиентные методы оптимизации - student2.ru ; (3.14)

Градиентные методы оптимизации - student2.ru , Градиентные методы оптимизации - student2.ru ; (3.15)

Градиентные методы оптимизации - student2.ru ; (3.16)

Градиентные методы оптимизации - student2.ru ; (3.17)

где Градиентные методы оптимизации - student2.ru – норма вектора.

Поиск завершается при выполнении одного из условий (3.14) – (3.17).

Недостатком градиентного поиска (так же и рассмотренных выше методов) является то, что при его использовании можно обнаружить только локальный экстремум функции Градиентные методы оптимизации - student2.ru . Для отыскания других локальных экстремумов необходимо производить поиск из других начальных точек.

Наши рекомендации