Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка с теорией.DOC
Скачиваний:
145
Добавлен:
01.05.2014
Размер:
4.7 Mб
Скачать

1.2. Градиентные методы (продолжение)

Общая схема методов: xk+1 = xk - *f ( x k )

Оценим скорость сходимости для выпуклых функций:

Теорема:

Пусть f (x) дважды дифференцируема и

l*I  2f (x)  L*I, где l>0, L>0 x (*), то есть f (x) – выпукла,

тогда при 0   2/L выполняется неравенство:

|| xk –x*||  || x0 –x*||*qk – геометрическая сходимость,

где q = max {|1-*l|,|1-*L |}, при этом min q() = (L-l)/(L+l)<1 и достигается при  = *=2/(L+l).

Доказательство: Применим формулу

f (x+y)= f (x)+(x+*y)y d к производной:

f (xk)= f (x*) + 2f (x*+*(xk-x*))( xk-x*) d = Ak*( xk-x*),

где матрица Ak=2f(x*+*(xk-x*))d симметричная и неотрицательно определена.

Из (*) следует l*I  Ak  L*I. Из определения метода следует

|| xk+1 –x*|| = || xk – *f ( x k ) - x*|| = || xk – x* - * Ak( x k - x*)|| =

= || (I- *Ak)*( x k - x*)||  || I- *Ak ||*|| x k - x*|| (т.к (x,y) ||x||||y||)

Для любой симметричной матрицы А выполняется:

|| I- A|| = max {|1-1|,|1-k|}, где 1,k ­– соответственно наименьшее и наибольшее собственные числа (значения) матрицы А.

Поэтому || xk+1 –x*||  || xk –x*||*q, где q = max {|1-*l|,|1-*L |}

так как 0   2/L è 0< l <L, то |1-*l| <1, |1-*L |<1  q<1.

Найдем min q()

q()

max =q()

1-l

1-l

1

L-1 * l-1

1-l**= -(1-L*)  *=2/(L+ l).

Тогда q(*) = (L-l) / (L+ l)

1.2.1. Градиентный метод с дроблением шага.

Как известно выбор постоянного шага может привести к осложнениям (см. стр.2).

Схема градиентного метода имеет вид xk+1 = xk - tk*f ( x k ). Если шаг выбрать с условием, что f(xk+1) - f(xk)  -* tk * || f(xk)|| (*), где 0   < 1, то результат будет значительно лучше.

Иллюстрация:

Необходимо двигаться к х*. В начальной точке проводим касательную к линии уровня и делаем по перпендикуляру к касательной в этой точке, шаг соответствующей величины. Если оказываемся «далеко», то делим шаг пополам, проводим линию уровня, касательную и шагаем по перпендикуляру и т.д.

Алгоритм:

1.Выбираем t=const.

2.Проверяем выполнение соотношения (*).

3.Если выполняется, то вычисляем следующую точку; если не выполняется, тогда длину шага t делим на 2, проверяем (*) è так äалее.

Там, где f ( x ) = 0- останавливаемся.

Теорема(о градиентном метоле с дроблением шага)

Градиентный метод с дроблением шага обеспечивает следующее неравенство: || xk –x*||  const.*qk, где 0<q<1.

Без доказательства.

1.2.2. Метод наискорейшего спуска.

Определяет оптимальное значение шага на каждом такте.

Значение функции, полученное этим методом, меньше чем в предыдущем методе.

Характерная черта метода: градиенты функции в соседних точках ортогональны.

Доказать самостоятельно.

Графическая интерпретация:

В начальной точке проводим касательную к линии уровня и делаем шаг оптимальной величины в направлении перпендикуляра к касательной в данной точке. Получив новую точку, повторяем действия и так далее.

Теорема (о скорости сходимости метода наискорейшего спуска)

Скорость сходимости метода наискорейшего спуска - геометрическая.

, где(L,l -указаны ранее)