Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методы оптимизации. Учебное пособие-3

.pdf
Скачиваний:
1
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
5.2. Метод градиентного спуска
kk() ()+
-Ј
1
1
e
() ()+
-Ј
1
2
e
1
0>
2
0>
yf
kk
()
i
СЈ
()
e
3
3
0>
x
*
x
k()
f xk()
()
f fx
**
()=
С другой стороны, достаточно малый шаг обеспечит вы­полнение неравенства (5.4), но для достижения требуемой точ­ности потребуется большое количество итераций. Поэтому сначала фиксируют некоторое значение шага спуска и производят вычисления по формуле (5.3). При этом если неравенство (5.4) не выполняется, то для текущей итерации величину шага спуска
уменьшают (дробят) до тех пор, пока условие убывания функции (5.4) не будет выполнено, и про­должают вычисления.
2. Условие окончания процедуры спуска. Выполняется тре-
бование на точность решения задачи минимизации, например
где
,
— заданные заранее числа.
xx
fx fx
()()
, или
,
Учитывая условия (5.3), получим:
kk
() () () ()
+
1
xx
-Ј =С
aa
x
,
отсюда следует, что можно использовать в качестве условия окончания итерационной процедуры градиентного спуска нера­венства:
k
()
fx
()
x
3. Выбор решения. В качестве приближения для
мается последняя вычисленная точка приближенно определяет величину
e
Ј
,
3
fxk()
, или
,
.
прини-
. Тогда значение
.
91
5. Численные методы минимизации функции нескольких переменных
f xfxx xxe
xx
() (, )==++
+
12 1
2
2
2
2
12
xRО
2
i
5
x()(, )000=
x
k1()xk2()
f xk()
()
¶¶fx
k
()
()
1
¶¶fx
k
()
()
2
xx
*()
(. ,.)»=--
3
0301 0163
f f*(. ,.).»- -=0301 0163 0 772
Пример 5.1
Минимизировать целевую функцию
,
,
методом градиентного спуска, завершив расчет при
k
()
fx
()
x
Ј
00
.
,
.
Решение Выберем начальное приближение
спуска шага спуска
k
0
–0.5 –0.5 1.118 – –
1 –0.25 –0.25 0.794 0.106 –0.393 0.25
2 –0.277 –0.152 0.774 0.098 0.045 0.25
3 –0.301 –0.163 0.772 0.026 0.023 – Точность достигнута
, построим последовательность (5.3) (с дроблением
), записывая результаты вычислений в таблицу.
x
x
0 0 1 1 1 1
–1 –1 3.145 – –
0 0 1 1 1 0.5
0 0 1 1 1 0.25
α Примечание
и величину шага
Условие (5.4) нару­шено. Уменьшим α
в 2 раза
Условие (5.4) нару­шено. Уменьшим α
в 2 раза
Условие (5.4)
выполнено
Условие (5.4)
выполнено
Следовательно, получим
92
,
.
Контрольные задания
x
()0
f x()
()0
f x()
()1
f xfxx xxe
xx
() (, )==++
+
12 1
2
2
2
2
12
x()(, )011=
f xfxx xxe
xx
() (, )==++
+
12 1
2
2
2
2
12
x()(, )011=
f xfxx xxe
xx
() (, )==++
+
12 1
2
2
2
2
12
x()(, )011=
f xfxx xxxx xx() (, )==++ ++
12 122212 12
2
x()(, )000=
f xfxx xxxx xx() (, )==++ ++
12 122212 12
2
x()(, )000=
f xfxx xxxx xx() (, )==++ ++
12 122212 12
2
x()(, )000=
f xfxx xx xxxxx() (, )==++++
12 142
232
12 23
x()(,,)
0
010=
f xfxx xx xxxxx() (, )==++++
12 142
232
12 23
x()(,,)
0
010=
f xfxx xx xxxxx() (, )==++++
12 142
232
12 23
x()(,,)
0
010=
f xfxx exxx
() (, )( )==+++
12 123
2
2
x()(, ,)
0
111=
xx
x
==+++
12 123
2
2
x()(, ,)
0
111=
xx
x
==+++
12 123
2
2
x()(, ,)
0
111=
f x()
x
k()
k
()()0
5.2. Метод градиентного спуска
1. Совершить один шаг градиентного спуска из точки с шагом
а)
б)
в)
г)
и сравнить значения
и
,
,
,
:
,
;
,
,
;
,
;
д)
,
;
е)
,
;
ж)
,
;
з)
,
;
и)
,
;
x
к)
f xfxx ex
() (, )( )
л)
1
1
,
,
,
,
;
f xfxx ex
() (, )( )
м)
2. Показать, что если функция ке
и
1
,
дифференцируема в точ-
, то при достаточно малом шаге
,
из вы-
ражения (5.3) будет выполнено условие (5.4).
;
,
,
,
,
,
,
;
.
93
5. Численные методы минимизации функции нескольких переменных
()xk
xx y
kkkk() () () ()+
=+1a
yfx
kk() ()
()=-С
()k
> 0
gg
kk k() () ()
n()aa
a=>0
gfxy
kkk() () ()
() ()aa=+
f x()
x
()0
()xk
li
()kk
®Ґ
С=0
y
k()
№ 0
()k
> 0
yy
kk
() ()
a
a=
0
0
()k
> 0
f x()
()k
> 0
dg
k
kk
()
a
aa=
0
() ()
yy
kk+=1
0
5.3. Метод наискорейшего спуска
Процедура построения последовательности
организо-
вана следующим образом:
В качестве величины шага спуска
,
,
.
выбирают решение
задачи одномерной минимизации:
()mi
,
. (5.5)
Таким образом, в данном методе спуск производится в на­правлении наибыстрейшего убывания целевой функции и при этом с максимально возможным шагом.
Теорема 5.4. Пусть функция оремы 5.2. Тогда для любой начальной точки
удовлетворяет условию те-
метод наиско-
рейшего спуска приводит к построению последовательности
m()
, удовлетворяющей
Если лишь при
dg
() ()
a
d
, то задача минимизации (5.5) имеет решение
, так как
fx
=
k
()
y
fx
=С =- <
fx
(( ), )
.
kk k
() () ()
2
,
то есть при
Пусть на
-м шаге метода наискорейшего спуска
решение задачи (5.5), тогда
94
()
d
a
k
()
имеем уменьшение значения функции
() ()
+
1
fx y
=С =
(( ), )
.
.
—
5.3. Метод наискорейшего спуска
f xfxx xx() (, )==+
12 122
2
f xfxx xx() (, )==+
12 1
2
2
2
100
f xfxx xxe
xx
() (, )==++
+
12 1
2
2
2
2
12
xRО
2
i
5
x()(,)000=
()0
11
Откуда следует, что направление спуска на
ции ортогонально направлению спуска на предыдущей
-й итера-
-й ите­рации. Таким образом, кривая движения по методу наискорей­шего спуска представляет собой ломаную, соседние звенья которой взаимно ортогональны.
Эффективность градиентных методов зависит от вида ми­нимизируемой функции. Метод наискорейшего спуска сойдет­ся за одну итерацию при любом начальном приближении для функции
(см. рисунок ниже). Но схо-
димость будет очень медленной, например, в случае функции вида
. В тех ситуациях, когда линии
уровня минимизируемой функции представляют собой прямо­линейный или, хуже того, криволинейный «овраг», эффектив­ность метода оказывается очень низкой.
Траектории спуска в зависимости от вида функций
Пример 5.2
Минимизировать целевую функцию
методом наискорейшего спуска, завершив вычисления при
k
()
fx
()
x
Ј
00
.
,
Решение
Шаг 0. Положим начальное приближение да
,
,
,
.
, тог-
95
5. Численные методы минимизации функции нескольких переменных
gf e
()
() (, )
022
01 01 3aaaa
a
=- -= +
-
()0
g()()0a
().0
022=
x()(, ).(, )( ., .)
1
00 02211022 022=-Ч=--
()1
0204 0 236
ge
() ..
() (. .)(. .)
122044 0032
0220204022 0 236aa a
a
=- -+-+ +
-+
g()()1a
().1
032=
x()(.,.).(. ,.)( .,.
2
022022 03202040236 0285301445=- --Ч-=- - ))
()2
0 08007 0 07268
ge
() ..
() (. .)(. .)
2220429 0
02853008007 01445 0 07268aa a=- -+-- +
--115275a
g()()2a
().2
024=
x()(. ,. )
3
0304501619=- -
()3
001821 002051
Для нахождения точки минимума
.
функции
пользуем метод перебора:
α 0.18 0.20 0.22 0.24 0.26
(0)
(α) 0.795 0.790 0.789 0.791 0.797
g
то есть
Шаг 1.
, откуда получим
.
,
Минимизируем
α 0.28 0.30 0.32 0.34 0.36
(1)
(α) 0.77401 0.77384 0.77380 0.77387 0.77401
g
то есть
, откуда получим
:
ис-
.
.
Шаг 2.
,
.
Минимизируем
α 0.20 0.22 0.24 0.26 0.28
(2)
(α) 0.77273 0.77241 0.77240 0.77241 0.77244
g
то есть
, откуда получим
:
,
, то есть требуемая точность до-
стигнута.
96
Следовательно, получим:
xx
*()
(. ,.)»=--
3
0305 0162
f f*(. ,.).»- -=0305 0162 0 772
f xfxx() (, )=
12
i
1
f xfxx xxxxxx() (, )==+++-
12 1
2
12 2
2
12
72 510
f xfxx xxxx xx() (, )==-+-+
12 1
2
12 2
2
12
33 42
f xfxx xxxxx() (, )==+++
12 1
2
12 2
2
2
4175
f xfxx xxxxxx() (, )==-+--
12 1
2
12 2
2
12
54 5
f xfxx xxxx x() (, )==++-
12 1
2
12 2
2
1
44 617
f xfxx xxxxxx() (, )==-++-
12 1
2
12 2
2
12
22 33
f xfxx xxxx x() (, )==+++
12 1
2
12 2
2
2
10 310
f xfxx xxxxxx() (, )==-++-
12 1
2
12 2212
26
f xfxx xx xx() (, )==+++
12 122212
f xfxx xxxx() (, )==++
12 1212 2
2
()xk
f x()
xx p
kkkk() () () ()+
=-1a
p fx
() ()
()
00
=С
p fx p
kkkk() () () ()
()=С +-b
1
5.4. Метод сопряженных градиентов
,
Контрольное задание
1. Минимизировать функции
методом наи-
скорейшего спуска, заканчивая вычисления при
k
()
fx
()
x
Ј
00
.
,
:
а) б) в) г) д) е) ж) з) и) к)
;
.
;
;
;
;
;
;
;
.
;
5.4. Метод сопряженных градиентов
Процедура построения последовательности нимума функции
организована следующим образом:
,
к точке ми-
,
, (5.6)
,
. (5.7)
97
5. Численные методы минимизации функции нескольких переменных
()k
> 0
gg
kk k() () ()
()min()aa
a=>0
gfxp
kkk() () ()
() ()aa=-
()k
()
()
i
i
2
==е1
k()
yfx
kk() ()
()=-С
p
k()
k
()
()
-pk()1
f x()
f x()
С
ў
-С
ўў
Ј
ў-ўў
fx fx Lx x() ()
ўўў
Оxx R
n
,
()xk
li
()kk
®Ґ
С=0
В качестве величины шага спуска
выбирают решение
задачи одномерной минимизации:
Параметр
определяется по формуле
()
k
()
fx
С
()
k
=
С
-
()
k
1
()
fx
,
()
fx
fx
x
i
()
k
x
k
,
2
-
1
n
2
е
=
i
1
=
2
n
. (5.8)
.
Таким образом, метод сопряженных градиентов отличается от метода наискорейшего спуска только выбором направления спуска (
вместо
). При этом
из выраже­ния (5.7) определяется не только антиградиентом но и направлением спуска
на предыдущем шаге. Это по-
зволяет более полно, чем в градиентных методах, рассмотрен­ных выше, учитывать особенности функции
при построе-
нии последовательных приближений (5.6) к ее точке минимума.
Теорема 5.5. Пусть функция
диент
удовлетворяет условию Липшица с постоянной
ограничена снизу и ее гра-
:
для
.
,
Тогда для последовательности
мулам (5.6)–(5.8) справедливо равенство
Условием окончания итерационной процедуры метода со­пряженных градиентов является выполнение требования на точность решения задачи минимизации:
98
m()
fx
, построенной по фор-
.
5.4. Метод сопряженных градиентов
i
СЈ
e
3
3
0>
mN
= 0
f xfxx xx() (, )==+
12 1
2
2
2
2
xRО
2
i
3
x()(, )011=
()0
24
p fx
() ()
()(, )
00
24=С =
gf
()
() (, )
02
12 14 36 20 3aaaaa=- -= -+
()0
g()()0a
dg
()
0
a
aa=
5
18
x
5
491
=-
ж и
ц ш
ч
ж и
ц ш
ч
894
4
81
p
89494
81
808120
81
ж и
ц
ш
ж и
ц ш
k
()
fx
()
x
e
Ј
,
3
()
fxk()
, или
,
.
Часто для уменьшения влияния накапливающихся погреш-
ностей вычислений через каждые
,
, то есть производят обновление метода (
итераций (5.6) полагают
параметр алгоритма).
Пример 5.3
Минимизировать целевую функцию
—
,
,
методом сопряженных градиентов, завершив вычисления при
k
()
fx
()
x
Ј
00
.
,
.
Решение Шаг 0. Положим начальное приближение
,
Для нахождения точки минимума
пользуем условие
()
1
=-Ч
(, ),,
Откуда
Шаг 1.
()
1
=-
з
11
fx() ,
,(,) ,
ч
()
d
a
18
()1
з
+=-
24
=
, то есть
()00
24
()
з
-
()1
,
9
з
.
9
=
,
,
ч
,
.
функции
()0
=
.
, тогда
ис-
99
5. Численные методы минимизации функции нескольких переменных
g
12
800
729
80812
9
g()()1a
9
20
x
,,(,)
4919920808120
81
00
ж и
ц ш
ж и
ц ш
()2
00
xx
*()
(, )»=200
f f*(, )»=00 0
f xfxx xxxx xx() (, )==++--
12 1
2
2212 12
277
xRО
2
i
5
x()(, )000=
()0
77
p fx
() ()
()(, )
00
77=С =- -
gf
()
() (, )( )
02
07 07 98 2aaaaa=+ += -
()0
g()()0a
()
0
a
aa=
1
4
x
1 4
747
4
ж и
ц ш
ч
()
()
aaa=-+
Минимизируем
.
и получаем, что
лучаем
()
2
=-
з
--
ч
з
=
ч
, требуемая точность достигнута.
Следовательно, получим
()1
=
, откуда по-
.
,
.
Пример 5.4
Минимизировать целевую функцию
,
,
методом сопряженных градиентов, завершив вычисления при
k
()
fx
()
x
Ј
00
.
,
.
Решение
Шаг 0. Положим начальное приближение
Для нахождения точки минимума
dg
пользуем условие
Откуда получим
()
a
d
()
1
=-Ч- -
=
, то есть
()00
(, ), ,
00
77
()
,
,
функции
()0
=
=
з
.
.
, тогда
ис-
.
100
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]