Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2793.Методы оптимизации..pdf
Скачиваний:
175
Добавлен:
15.11.2022
Размер:
33.68 Mб
Скачать

4.2. Методы спуска

Пусть существует точка ®* G Rn, в которой целевая функция f(x) достигает минимума. Процедуру поиска этой точки в методах спуска обычно описывают (после выбора начальной точки х°) рекуррентным соотношением

x k = x k~l + ркик, к е N,

(4.20)

где ик ЕШп — единичный вектор, определяющий направление спуска на к-й итерации, a fa ^ 0 — длина шага спуска,

т.е.

расстояние в этом направлении, отделяющее точку x k~l

от

новой точки х к. Методы спуска различаются способами

выбора направления и шага спуска.

 

Если на fc-й итерации выбран вектор ик, то один из способов

выбора значения fa базируется на требовании, чтобы выполня­ лось неравенство*

f(x k~l + pkuk) < (1 - \k)f(x k~l) + A*; min /(® fc_1 +puk), (4.21)

где Xk E [0,1]. Отметим, что выбор значения fa в соответствии

сусловием (4.21) обеспечивает выполнение неравенства (4.2), так что последовательность {ж*}, построенная в соответствии

с(4.20), будет релаксационной.

При = 1 неравенство в (4.21) переходит в равенство, а значение fa соответствует минимальному значению функции f(x) при изменении х вдоль луча, исходящего из точки х к~ 1 в направлении вектора ик, т.е. на множестве

е Ш п : х = х к~1 + (Зик, (3 Е М *} .

В этом случае для нахождения fa необходимо решить задачу одномерной минимизации (см. 2 ). При этом значение fa может быть не единственным (в таком случае выбирают наименьшее значение).

При Хк = 0 (4.21) переходит в неравенство

(4.22)

Необходимость в решении задачи одномерной минимизации от­ падает, а для выбора значения (Зк можно использовать различ­ ные эвристические приемы.

Рассмотрим промежуточный случай А* € (0,1). Для /? € R* из (4.20) и (4.21) получаем

/(® *_1) - f ( x k) ^ Хк(Д®*-1) - min f { x k~l +/3ик)) ^

> \ k {f{x k- x) - f { x k~l +f3uk)). (4.23)

Тогда при выполнении условий теоремы 4.3 оценка (4.15) при­ мет вид

Я * ° ) - /( * * ) ' Р \ ^ *

m 6 N,

|grad/(xk -1 )|2

где 7 параметр сильной выпуклости функции /(® ). Эта оценка позволяет установить роль параметра* А&. Пока отно­ шение

/ ( * fc_1) - / ( * fc)

Фк = |grad Я® *-1\|2 > fceN,

остается достаточно большим, значение Ад, следует выбирать таким, чтобы произведение Xkipk оставалось на каждой к-й ите­ рации примерно постоянным. Тогда при сравнительно малом значении Хк нет необходимости в высокой точности вычисле­ ний значений /Зк и решения задачи одномерной оптимизации функции f ( x k~1 + Puk) по аргументу /3 и можно выбрать (Зк просто из условия (4.22). Однако по мере приближения к точке ®* минимума целевой функции необходимо увеличивать зна­ чение Хк вплоть до единицы и выбирать значение (Зк из более

точного решения задачи одномерной минимизации функции /(ж ^” 1 + (Зик) по аргументу /3, обеспечивая тем самым выпол­ нение условия (4.17).

Высказанные соображения качественного характера спра­ ведливы не только для сильно выпуклых функций, но и для выпуклых функций, удовлетворяющих условиям теоремы 4.1. При некоторых дополнительных ограничениях эти соображе­ ния можно распространить на невыпуклые дифференцируемые функции*

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

Лемма 4.3. Если функция /(ж ) непрерывно дифферен­ цируема во всех точках х = у + тр, т Е [0, 1], то справедливо равенство

1

 

f(y+ p) = f{y) + J (grad f(y + Tp),p)dr.

(4.24)

о

 

◄ Функция h{r) = f(y + тр) действительного переменного т, как сложная функция, непрерывно дифференцируема на отрез­ ке [0, 1], и ее производную для произвольного т 6 [0, 1], согласно правилу дифференцирования сложной функции, можно запи­ сать в виде

h'(т) = (grad / (у + тр),р).

Для этой функции верна формула Ньютона — Лейбница

1

J h'(r) dr = h(l) —h(0).

о

Поскольку h(0) = f{y), h(l) = f{y + p), то записанная формула равносильна равенству (4.24). ►

Лемма 4.4. Пусть функция f(x ) непрерывно дифферен­ цируема на выпуклом множестве X С Кп и существует такая константа L > 0, что для любых х ,у Е X выполнено неравен­ ство

|grad/(®) — grad/(y)| < L\x у\.

(4.25)

Тогда для любых х, у е X справедливо неравенство

/ ( ® ) - / ( у ) ^ (grad/ (аг), х —у) —^\х —у\2

(4.26)

◄ Полагая р = х у , согласно лемме 4.3 и свойствам скалярного умножения, получаем

I

/ ( ® ) - / ( у ) = У (grad/(j/ + rp ),p )d r =

О

1

= (grad/(x), р) + J (grad/( у + тр) - grad/(ж ), р) dr.

Используя неравенство Коши — Буняковского и (4.25), за­ ключаем, что для интеграла I в правой части записанного равенства верны соотношения

1

I > - J |grad/(y+ тр) grad/(®)| |p|dr ^

о

1

> - L j \у + т { х - у ) - х \ \ х - у \ ( 1 т =

о

1

= -L \ x-у\2 J (1 - т ) с 2т = - ^ | ж - у I2

о

В итоге приходим к (4.26). ►

Вектор, противоположный градиенту функции, называют антиградиентом. Антиградиент функции f(x ) в точке х будем обозначать w(x) = — grad/(ж). Если градиент опреде­ ляет направление наибольшего возрастания функции [V], то антиградиент, наоборот, задает направление наибольшего убы­ вания этой функции. Для к-й итерации используем обозначения wk _ — grad f { x k~l) для антиградиента в точке х к~ 1 и

[wk, ик)

(grad/(а;*"1), ик)

ак =

4.27

 

|grad/(®fc-1)|

для косинуса угла между направлениями спуска и антигради­ ента.

Теорема 4.4. Если выпуклая и непрерывно дифференци­ руемая в Rn функция / ( ж ) удовлетворяет на множестве X Q = = { ж G Мп: f(x ) ^ / ( ж 0) } условиям леммы 4.4, множество Хо ограничено, а последовательность {х к}, построенная в соответ­ ствии с (4.20) и (4.21), является релаксационной, то справедлива оценка

/(ж ™ )-/(ж *)

/ ( s ° ) - /( « • )

-1

т е N, (4.28)

f(x ° ) - f(x * ) "

2L T)2

 

где L — константа в условии (4.25), а 77= diamXo — диаметр множества X Q.

◄ Используя (4.23), (4.26),

(4.27)

и учитывая, что \ик\= 1,

заключаем, что

 

 

/(ж * -1) -

Н хк) > A fc t /V " 1) - /(ж * - 1 +(3ик)) >

 

> Ajk(grad/(ж *-1), ж*- 1

- (хк~}+Р и к)) -

 

~ ~Y~|*fc_1 - (a5*:_1 + Р*к) |2= h/3ak\wk\-

для любых

значений /3 ^ 0 .

Из

условия максимума правой

части полученного неравенства выберем /3 = ak\wk\/L и после

подстановки этого значения, обозначив щ = f ( x k) — f(x*), запишем

т - 1 - т = f ( * k~‘) - Я®*) > ~ ^ \ т к \2 =

= ^ \ е т А П х к- ') ( ‘ 2 0. (4.29)

Отсюда, используя (4.10) и учитывая, что \хк —х*\ ^ г/, находим

AtOf? о

Wb-i - ^

ч>к-ъ к е N.

Сопоставляя это неравенство с первым неравенством в (4.3) и обозначая 7* = А^а|/(2Ьгу2), согласно лемме 4.1, получаем оценку (4.28). ►

Оценку (4.28), доказанную в теореме 4.4, при некоторых дополнительных условиях можно упростить, а именно если для некоторого номера итерации га коэффициент ненулевой, то сумма в (4.28) отлична от нуля и мы можем, немного ухудшив эту оценку, опустить в ней единицу. В результате получаем

/ ( * “ ) - Я®*) <

— I т £ т .

(4.30)

к=1

Теорема 4.5. Если сильно выпуклая и непрерывно диффе­ ренцируемая в Шп функция f(x ) удовлетворяет в Шп условиям леммы 4.4, а последовательность {ж*}, построенная в соответ­ ствии с (4.20) и (4.21), является релаксационной, то справедли­ вы оценки

(4.31)

m eN , (4.32)

т й ^ Н - ф - * ) -

где L — константа в условии (4.25), а 7 — параметр сильной выпуклости функции f{x ).

◄ Согласно

теореме 3.18, имеем |g r

a d х)|2 ^

и>

подставляя это неравенство в (4.29), находим

 

 

4>k-1

= f{x k~l) - f {x k) > чЩ^ч>к-и

к е N.

 

Сопоставляя это неравенство с первым

неравенством в

(4.8)

и обозначая

т* = j\kCx]c/(2L)t согласно

лемме

4.2, получаем

оценку (4.31). Оценка (4.32) следует из (4.31), если принять во внимание доказанное в теореме 3.18 неравенство |аз*- 1 х*\2 ^

< ^ (/(® fc_1) -/(* * ))• ►

Если на каждой итерации направление спуска выбирать так, чтобы для всех к Е N в (4.27) 0 < a ^ a f c ^ l H 0 < A ^ A f c ^ l , то вместо (4.30) получим

Д х ™ ) - / ( х * ) < ^ , meN,

(4.33)

а из (4.31) и (4.32) следуют оценки

/ ( * » ) - /(®*) ^

 

Ч

2L

) ’ т е N,

(4.34)

\хт —х*\2

2

(

7 Ла2

\

(4.35)

/ ( , « ) - Л х . ) < ^ ехр( -

2L

т е м .

mh

 

Из (4.33), (4.34) видно, что при выборе |а*| = а = А = 1 можно ожидать наиболее быстрой слабой сходимости используемого метода спуска, а в случае сильно выпуклой минимизируемой функции — и наиболее быстрой сильной сходимости.

Отметим, что при а* = 1 единичный вектор ик, задающий направление спуска на /с-й итерации, сонаправлен антиградиен­

ту w (xk~l) в точке sc*” 1, т.е. ик= г-т^ГиТ- Такой выбор векто-

ра икна каждой итерации характерен для метода градиент­ ного спуска (хотя его точнее надо было бы назвать методом

антиградиентного спуска). Если при этом на каждой итерации Ад? = А = 1, то это означает, что в направлении антиградиен­ та проводят одномерную минимизацию функции f ( x k~l + fiuk) по аргументу /3. Такой вариант метода называют методом наискорейшего спуска.

4.3. Метод градиентного спуска

Пусть целевая функция f(x) ограничена снизу и непрерывно ‘дифференцируема в W1. Предположим, что существует точка х* Е К71, в которой эта функция достигает локального миниму­ ма. Рассмотрим некоторые особенности применения метода градиентного спуска для поиска этой точки.

В этом методе элементы релаксационной последователь­ ности {х к} удовлетворяют рекуррентному соотношению вида (4.20)

и)к

Хк= х к~1+ 0kUk = х*-1 + &6N, (4.36)

где Рк > 0 — шаг спуска на к итерации, а направление спуска

задано

единичным вектором uk = wk/\wk\,

сонаправленным

антиградиенту wk = —gra,df(xk~l) в точке

х к~ Тогда из

(4.27)

следует, что ад, = 1 для всех к G N.

 

Если f(x) является выпуклой функцией и удовлетворяет условиям теоремы 4.4, то градиентный метод обладает слабой сходимостью, причем справедлива оценка

Л « ° ) - / ( * ' )

<

Я * т ) - /( * • ) <

1 + 1 Щ г Ж 1 '£ ь к

2i”2

и

______2Lrj1

2Lrj2

<

m £ N ' (4'37>

А1 + А2 + ... +

где L — константа в условии (4-25), метр ограниченного множества Хо = {*

rj = diamXo — диа­ £ К” : /(х ) ^ / ( х 0)}, а

Afc ^ А > 0 — параметр в условии (4.21), которому подчинен на /с-й итерации выбор шага спуска /3*. Если же /(ж ) является сильно выпуклой функцией и удовлетворяет условиям теоре­ мы 4.5, то этот метод обладает сильной сходимостью. При этом для любого га Е N имеем

f ( x m) - f ( x * )

/ ТА \

(4.38)

f ( x ° ) - f ( x * )

^ PV 2L J’

 

|*m _ ®*|2

^ 2

^

(4.39)

/(* ° ) —/("**)

^ 7 eXPV 2L

/ ’

 

где 7 параметр сильной выпуклости функции f{x).

Возникает естественный вопрос, при каких условиях схо­ дится метод градиентного спуска в случае дифференцируемой невыпуклой функции /(ж). Рассмотрим один из вариантов это­ го метода, когда в (4.36) /3* = x\wk\, где х = const > 0, т.е. шаг спуска на каждой к-й итерации пропорционален длине векто­ ра антиградиента в точке хк~1. Таким образом, вместо (4.36) получим рекуррентное соотношение

х к — x k~l + xw k, х > 0 , keN.

(4.40)

Теорема 4.6. Пусть функция f(x) ограничена снизу и не­ прерывно дифференцируема в R71, причем для любых ж, у Е Шп выполнено неравенство

|grad/(ж ) - grad/(y)| < Цх - у |,

(4.41)

где L > 0 — некоторая константа. Тогда последовательность {ж*}, определяемая рекуррентным соотношением (4.40) с х Е Е (0, 2/L), является релаксационной. При этом справедлива оценка

f ( x k) ^ f ( x k

|grad/(®fc *)|2

(4.42)

и |grad/(®*:)| —>0 при к —> оо.

◄ Положив в (4.24) у = х к~1

и р = x w k, с учетом (4.40),

равенства |го*|2

=

(wk,w k) =

— (grad/(®fe_1), wk) и свойства

линейности скалярного произведения находим

 

 

1

 

f ( x k) - / ( ж * - 1 ) =

У

(gradf(xk~l + Txwk) ,x w k)dT =

 

о

1

 

 

 

 

=x\wk\2+ x j (gT&df(xk~i + Txwk) —gra.df(xk~1),wk)dT.

о

Оценим интеграл в правой части этого равенства, приняв во внимание неравенство Коши — Буняковского и (4.41):

1

J (grad/(a:fc-1 + rxw k) grad/(ж *-1), wk) dr <

о

 

l

^ J\(gra.df(xk 1 + rxw k) grad/(ж* 1),tnA:)|dr^

l

о

l

<L

+ T X W k - X k 1 \wk\dr= xL\wk\2 J Tdr = ^-\w k\2

о

 

В итоге получим / ( x k) —f ( x k~l) ^ —x(l —xL/2)\wk\2, что c учетом равенства |u>fc|2 = |grad/(xfc-1)|2 равносильно (4.42). Представив (4.42) в виде

|grad/(ж* ^l2 ^ /(ж *"1) - /(ж * )

 

х(1 —xL/2)

и просуммировав по к от 1 до ш, запишем

J^lgradf { x k х)|2 <

/(ж ° ) - /(ж т )

к=1

х(1 - хЬ/2)

 

Отсюда в силу ограниченности снизу функции f(x) следует, что при га -> оо сумма в левой части будет конечна, т.е. |gradf ( x k)\-¥ 0 при га -> оо. ►

Замечание 4.1. Из теоремы 4.6 не следует сходимость метода градиентного спуска, в котором используется (4.40), к какой-либо точке. Например, функция f(x) = 1/(1 + |ж|2) удо­ влетворяет условиям теоремы, но при любом выборе начальной точки х° Е W1имеем \хк \—>оо при к —> оо.

Приведенный пример показывает, что функция вообще мо­ жет не достигать наименьшего значения. Однако если к усло­ виям теоремы 4.6 добавить требование ограниченности мно­ жества X Q = Е Mn: f(x) ^ /(ж 0)}, то, согласно теореме 7.1 в случае = R71, функция f(x) будет достигать наименьшего значения. Можно показать, что при этом последовательность {хк} будет сходиться к какой-либо стационарной точке функ­ ции. #

Некоторые особенности рассматриваемого варианта метода градиентного спуска можно выявить, если допустить наруше­ ние отдельных условий теоремы 4.6. Так, если функция f(x) не является ограниченной снизу, то нельзя утверждать, что |grad/(x/c) | 0 при га -> оо. Действительно, для линейной функции f(x) = (с, х) при с Ф 0 имеем |grad/(®)| = \с\> 0. Ес­ ли выбрать 2/L, то в процессе итераций минимизируемая функция может не убывать. В самом деле, для ограниченной снизу функции f(x) = Lx2/2, х Е R, выполнено условие (4.41), а (4.40) принимает вид хк = хк~1 —x f\ x k~l) = (1 —xL)xk~l} но при выборе к ^ 2/L получим

Я * ‘ ) = § ((1 - x i) * * - 1)2 > | (х ‘ - ‘ )2 = /(х * - ‘ ),

т.е. последовательность {®fc} не является релаксационной. Наконец, рассмотрим последствия нарушения условия (4.41).

Функция f(x) = |ж|1+<5, где S€ (0,1), имеет точку минимума

х* 0, дифференцируема в Rn, но ее градиент не удовлетворя­ ет условию (4.41), поскольку

|grad/(a;) - grad/(0)|

1 +6

при |ж -> 0.

 

1*-о|

оо

 

|ж|1-<5

 

 

Для этой функции

 

 

 

wk = — grad/(xfc_1) = -(1 + £)|**-1 |*7нрт

1 + 6

Х к ~ \

\x k - l \ l - S

 

 

Поэтому при достаточно малых значениях \хк 1|, соответству­ ющих приближению к точке х* минимума, из (4.40) имеем

х (! + ^)

1

я{1 + 6)

lx*-1!1- 15

 

la-fc-ip-j |xfc_1|> la?*-1)

 

 

иf(xk) > f(xk *), т.е. последовательность {|xfc|} не сходится

кнулю. Можно показать, что предел этой последовательности

 

1

равен

1_<J Не удовлетворяет условию (4.41) и диффе­

ренцируемая на Кп функция f(x) |ж|2+£, е > 0, имеющая ту же точку х* = 0 минимума, так как

|grad /(ж ) — grad /(0 ) [

 

(2 4-е)|ж|£ —>•оо при |а?| -+ оо.

—о|

 

 

В этом случае wk= —(2 + e)|xfc

1|£x fc

1 и в соответствии с (4.40)

находим

 

 

 

|xfc|= \хк 1 -

>с(2 + е)\хк 1\ех к

*| =

|1 - х ( 2 + е)\хк 1 |е||a?fc 1|.

Отсюда видно, что последовательность {ж*1} сходится лишь при условии |l — х(2 + e)|xfe-1|£|< 1, т.е. если начальная точка ж0 удовлетворяет неравенству ус(2 + е)|х°|£ < 2.

Один из недостатков метода градиентного спуска с фикси­ рованным значением у с в (4.40) состоит в том, что в окрест­ ности стационарной точки ж дифференцируемой функции / (ж)

шаг спуска на некоторой к-й итерации может оказаться больше расстояния х —х к~1, т.е. при этом алгоритм ппроскакивает “ искомую точку. Более того, этот шаг может быть настоль­ ко большим, что f { x k) > f ( x k~l) и последовательность { х к} перестанет быть релаксационной. Избежать такой ситуации позволяет выполнение условия (4.41), существенно ограничи­ вающее класс рассматриваемых функций, а также выбор х Е Е (0,2/Ь) (см. теорему 4.6), который порождает второй недо­ статок этого метода: по мере приближения к стационарной точке шаг спуска x|grad/(xfc_1)| уменьшается, что сильно за­ медляет сходимость последовательности {х к} к этой точке.

Из оценки (4.42) следует, что можно избежать „проскакивания“ искомой стационарной точки, если выбрать х = 1/L из условия максимума выражения х(1 — xL/2). Однако в при­ кладных задачах проверить выполнение условия (4.41) и найти константу L обычно не удается. Поэтому вместо (4.40) исполь­ зуют рекуррентное соотношение

х к — х к~1 + XkWk — х к~1 — Xfc grad/(xA:” 1), к Е N, (4.43)

и подбирают значение х^ > 0 на каждой к-и итерации из усло­ вия, которое в меньшей степени, чем (4.41), ограничивает класс минимизируемых функций. В случае ограниченной снизу функции f(x) для обеспечения сходимости последовательности {\gra.df(xk)\} к нулю достаточно, чтобы на каждой fc-й итера­ ции для некоторого числа ио > 0 выполнялись неравенства

/(® fc_1) - f ( x k) ^w0\wk\2 =wo|grad/(£c*:-1)|2, fce N. (4.44)

В самом деле, суммируя неравенства (4.44) для к = 1, га, полу­

чаем

т

/ ( * 0) - / ( * т ) > w o^ | g ra d /(® fc_1)|2.

А:=1

оо

Поэтому знакоположительный ряд

|grad/(xfc“ 1)|2 сходится,

к=1

а в силу необходимого признака сходимости его общий член стремится к нулю, т.е. |grad/(ж*)! — 0 при к-* оо.

Следовательно, условие (4.44) в сочетании с (4.43) можно ис­ пользовать для выбора значения щ. Существуют разные спосо­ бы такого выбора* Ограничимся рассмотрением двух из них.

Если функция /(ж ) непрерывно дифференцируема в К71, то скалярное произведение

(grad/(ж), wk) = — (grad/(ж ), g ra d /^ * -1))

ее градиента на антиградиент wk = —grad f ( x k~1) является не­ прерывной функцией. В точке х к~х оно равно —\wk\2 ^ О, причем равенство нулю возможно лишь в случае, когда х к~1— стационарная точка. Ясно, что функция /(ж ) убывает в напра­ влении антиградиента до тех пор, пока это произведение оста­ ется отрицательным. Поэтому один из способов выбора значе­ ния Hk на к-й итерации состоит в том, чтобы в (4.43) х к была ближайшей к х к~х точкой, в которой производная функции /(ж ) по направлению антиградиента обращается в нуль, т.е.

(g ra d /^ fc), wk) = 0, к € N.

(4.45)

Указанный способ называют исчерпывающим спуском (дви­ жение в направлении антиградиента wk происходит до тех пор, пока не будут исчерпаны „подряд идущие" отрицатель­ ные значения производной функции / (ж) по направлению этого вектора).

Замечание 4.2. Отметим, что точка х к, найденная при помощи исчерпывающего спуска, может не совпадать с со­ ответствующей точкой, найденной по методу наискорейшего спуска. Показано (см. 4.4), что в случае квадратичной функ­ ции эти точки совпадают на каждой итерации. Если функция /(ж ) строго выпукла в Г , то в силу теоремы 3.7 функция 'фк(х) = / ( x k~x+ xw k) также строго выпукла. Поэтому, если стационарная точка функции фк(х) существует, то, согласно

теоремам 3.14 и 3.15, эта точка единственна и в ней функция достигает наименьшего значения. #

Из (4.45) следует, что на (к+1)-й итерации новое направ­ ление исчерпывающего спуска, определяемое антиградиентом wk+1 = — grad/(xfc), ортогонально предыдущему направлению. Так как grad f { x k) коллинеарен вектору нормали в точке х к к поверхности (линии) уровня f(x) = f { x k), то луч, исходящий из точки х к~1 по направлению вектора wk = —grad/(®/c_1), вдоль которого на к-й итерации происходит исчерпывающий спуск,

лежит в

плоскости,

касательной к этой поверхности уровня

в точке

х к, т.е. луч

касается поверхности уровня функции,

проходящей через точку х к. Отметим, что если при переходе через эту точку производная по направлению wk не изменяет

знак, то

луч пересекает поверхность (линию) уровня f(x) =

= f ( x k).

Эти ситуации в плоском случае показаны на рис. 4.1

и 4.2.

 

Замечание 4.3. Покажем, что для функции, удовлетворя­ ющей условиям теоремы 4.6, существует такое число ыо, что при исчерпывающем спуске на каждой итерации будут вы­ полняться неравенства (4.44). Для этого используем формулу Тейлора с остаточным членом в форме Лагранжа

f ( x k) - f { x k~l) = (grad/(a;fc-1 + ‘d(xk —x fc-1)), x k -a?fe-1),

где ‘в € (0 ,1). Отсюда, учитывая (4.43), получаем

Д * * - 1) - f ( x k) = —х * (grad/ (a;fc_1 + Ц х к- x k~1)), wk).

Точка х к~г + ,в{хк —х к~г) на прямой исчерпывающего спуска является промежуточной между х к~1 и х к. Производная по направлению wk в этой точке отрицательна, и поэтому

(gra.df(xk~l + '&(xk - x k~1)),wk) =

= h fe|2(grad/(®fc" 1 + Д®* - ®fc_1)),

< 0.

Следовательно, выбор

 

Wo ^ -Xfc (grad/(®fc_1 + -d(xk - ®fc_1)),

> 0

обеспечивает выполнение неравенства (4.44). На рис. 4.3 изо­ бражены итерации исчерпывающего спуска в случае К2.

Так как при использовании наискорейшего спуска значение функции ф(х) = f ( x k~1+ xw k) в точке ее наименьшего значе-

Рис. 4.3

ния не превышает величины f ( x k) при исчерпывающем спуске, то неравенство (4.44) будет выполнено и в этом случае, что га­ рантирует сходимость последовательности {ги*} к нулю. #

Нетрудно проверить, что при минимизации функций |ж|1+<у, 5 Е (0,1), и |ж|2+е, е > 0, для которых нарушено условие (4.41), при любом выборе начальной точки исчерпывающий спуск при­ водит в точку наименьшего значения за одну итерацию. Это указывает на то, что исчерпывающий спуск может дать по­ ложительный результат при минимизации тех функций, к ко­ торым не применим метод градиентного спуска с х = const. Исчерпывающий спуск сходится к стационарной точке х е X Q функции /(ж ), непрерывно дифференцируемой на выпуклом множестве П D X Q, если множество X Q= Е W1: f(x) « Я * 0)} ограничено. Однако за расширение класса функций по сравне­ нию с рассмотренным в теореме 4.6 приходится расплачиваться заметным усложнением алгоритма, так как теперь на каждой итерации необходимо решать достаточно трудоемкую задачу одномерной оптимизации при поиске точки х к и соответству­ ющего значения х^.

Выполнение условия (4.44) можно обеспечить более простым путем.

1.В точке х к~хопределяем направление wk= —grad/(xA:” 1) спуска, вычисляем производную (grad f ( x k~l), wk) = —lu^l2 по этому направлению (если \wk\= 0, то х к~1 — искомая ста­ ционарная точка), полагаем х^ = хо, где хо > 0 — некоторое произвольное значение, одинаковое на всех итерациях, и пере­ ходим к п. 2.

2.Находим с помощью (4.43) точку х к = х к~1 + х^ги*, вы­ числяем значение f ( x k) и переходим к п. 3.

3.Проверяем выполнение неравенства*

f ( x k) < f i x * - 1) - uk\w*\2 < fix * -1) - u x k\w*\2,

*См .: Пшеничный Б .Н .} Данилин Ю .М .

где CJ Е (0 ,1). Если оно не выполнено, то уменьшаем значение х* (например, вдвое) и возвращаемся к п. 2, а в противном случае на к-й итерации фиксируем использованное в п. 2 значение щ и найденную точку х к.

Такой способ подбора значения х^ получил название ме­ тода дробления шага. На рис. 4.4 показаны итерации с использованием этого метода в случае плоскости.

Рис. 4.4

Несмотря на возможность расширения класса дифферен­ цируемых функций, для которых метод градиентного спуска позволяет искать стационарные точки, оценку скорости схо­ димости этого метода к точке минимума удается установить лишь для более узкого класса функций. Пусть множество X Q= = {х Е К71: f(x) ^ /(ж 0)} ограничено. Тогда существует стаци­

онарная точка аз*, в которой дифференцируемая функция /(аз) достигает наименьшего значения f(x*) (см. замечание 4.1).

Теорема 4.7. Пусть дифференцируемая в Мп функция /(х ) достигает своего наименьшего значения /(х *) в точке х*. Если множество X Q= {х G /(х ) < /(аз0)} ограничено и для любой точки х выполнено неравенство

|grad/ (х)|2 > £т0(/(х ) - /(х * )),

(4.46)

где сто > 0, то для релаксационной последовательности {а:*}, построенной при помощи (4.43) и (4.44) и сходящейся к точке х*, справедливы оценки

Я * * ) - / ( ! О < 4 * ( / ( * 0) - / ( * * ) ) ,

(4.47)

где С > 0 и q Е (0,1).

◄Так как при построении последовательности { х к} на каждой k-и итерации выполнено неравенство (4.44), то с учетом (4.46) имеем

/( x fc_1) - f { x k) ^ wjfc|grad/(xA:'~1)|2 ^ w0|grad/(x/c_1)|2 ^

^w0CT(/(xfc-1) - f(x*)) > w0a0(f(x k~1) - /(х * )),

ИЛИ

/( * * ) “ /(* * ) < (1 —своего) ( /( x fc_1) - /( x * ) } .

Отсюда, выбирая значене его > 0 так, чтобы q = (1 — OJQCTQ), получаем первое неравенство в (4.47). Используя это нера­ венство, а также неравенства (4.43), (4.44) и учитывая, что релаксационная последовательность {x fc} удовлетворяет усло­ вию / ( x fc_1) — f ( x k) ^ / ( x fc_1) — /(х *), находим

|Х* - ®fc-1|2 = x 2|grad/(xfc- 1)|2 < — ( / (*fc_1) — / (xfc)) <

^ ^ ( / ( x * - 1) -/(X *)) — 9*_1(/(ав°) —/(as*)),

Шo