Градиентные методы
Поверхность уровня целевой функции, описываемая уравнением f (X) = const, имеет размерность n – 1.
В задачах на минимум используется противоположное направление – антиградиент. Значения производных могут быть найдены по приближенным формулам:
Более точный результат дает вторая формула, но она требует больше вычислений. Чем точнее необходимо вычислить производную, тем меньше должно быть D х. Однако недопустимо, чтобы разность значений функции была соизмерима с погрешностью вычисления. Если переменные имеют разные единицы измерения, можно перейти к относительным переменным yi, используя минимально и максимально возможные значения переменных xi: Знание градиента (антиградиента) позволяет осуществлять перемещение из текущей точки в направлении наибольшего улучшения функции. Для линейных функций оно постоянно и поэтому его требуется определять всего один раз. В нелинейных функциях значение градиента зависит от вектора X, то есть его необходимо пересчитывать при любом изменении X. В градиентном методе поиск минимума производится согласно рекуррентным формулам: Алгоритм градиентного метода. 1) Задать начальную точку, начальное значение шага и точность по величине градиента e, вычислить f (X0) и положить k = 0. 2) В текущей точке X k вычислить градиент (производные 3) Проверить: если 4) Определить новую точку X k +1 и вычислить в ней значение функции. 5)
В результате решения задачи определяется оптимальный шаг h *, по которому находится следующая точка: Алгоритм наискорейшего спуска. 1) Задать начальную точку и точность по величине градиента e, положить k = 0. 2) В текущей точке X k вычислить градиент (производные 3) Проверить: если 4) 5) Определить новую точку X k +1 , увеличить k на 1 и перейти на шаг 2. На рис. показаны две траектории движения к минимуму функции f (X)=(x 1- x 2)2+(x 2-2)4, полученные алгоритмом. Минимум на направлении антиградиента достигается в точке касания с линией уровня, а градиент в этой точке ортогонален ей. Поэтому каждое последующее направление ортогонально непосредственно предшествующему. Из рис. видно, что с приближением к экстремуму частота вычисления градиента увеличивается, и вблизи минимума метод наискорейшего спуска вырождается в градиентный. Градиентные методы плохо работают в условиях оврага: при попадании на дно оврага резко падает скорость движения и возможна остановка поиска до достижения окрестности минимума.
|