Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
25
Добавлен:
12.04.2015
Размер:
204.05 Кб
Скачать

ЧИСЛЕННЫЕ МЕТОДЫ МНОГОМЕРНОЙ МИНИМИЗАЦИИ. Методы первого порядка

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 2]

Пример 2. Найти минимум квадратичной функции

f(x1; x2) = x21 + 2x22 ¡ 4x1 ¡ 4x2:

методом сопряженных градиентов. 1. Запишем f(x1; x2) в виде:

f(x) = 12(Ax; x) ¡ (b; x);

где

 

 

@2f(x) @2f(x)

 

 

 

 

 

 

A = G(x) =

6

 

 

 

7

=

·0

4¸

; b =

·4¸

@2f(x)

 

@2f(x)

 

2

@x12

@x1@x2

3

 

2

0

 

4

 

6

 

 

 

7

 

 

 

 

 

 

6

 

 

2

7

 

 

 

 

 

 

4

 

 

 

5

 

 

 

 

 

 

6

@x2@x1

@x2

7

 

 

 

 

 

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 3]

2. Возьмем начальное приближение x0 = (0; 0)T и будем вести вычисления по формулам:

xk+1 = xk + ®kSk;

k = 0; 1; 2; :::; N ¡ 1;

®k = ¡

k; Sk)

; ¡k = Axk ¡ b;

 

(ASk; Sk)

S0 = ¡¡0; Sk = ¡¡k + ¯1S1; k > 1;

¯1 = (AS1; ¡k) : (AS1; S1)

Здесь N размерность вектора x.

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 4]

Шаг 1: Вычислим градиент в начальной точке x0 = (0; 0)T :

 

¡

·0

4¸

¢

·0¸

¡

·4¸ ·¡4¸

¡0 = Ax0

 

b = 2 0

 

0

 

4 = ¡4

Таким образом

¡0 = Ax0 ¡ b = (¡4; ¡4)T :

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 5]

Первый шаг совпадает с первым шагом метода наискорейшего градиентного спуска так как S0 = ¡¡0.

Найдем шаг спуска ®0 по формуле:

®0 = ¡

(S0; ¡0)

=

 

0; ¡0)

; S0

= ¡¡0:

(AS0; S0)

(A¡0; ¡0)

Вычислим скалярное произведение (¡0; ¡0), ¡0 = (°1; °2)T = (¡4; ¡4)T в числителе в выражении для ¯0:

0; ¡0) = °1 ¢ °1 + °2 ¢ °2 = (¡4)(¡4) + (¡4)(¡4) = 42 + 42;

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 6]

Вычислим скалярное произведение (A¡0; ¡0) в знаменателе, где

 

·a21

a22¸ ·0 4¸

·°2¸ ·¡4¸

 

 

A =

a11

a12 =

2 0 ; ¡0 =

°1 = ¡4 :

 

Сначала найдем произведение A¡0:

 

(¡4) + 4 ¢ (¡4)¸

·a21

a22¸·°2¸ ·a21°1

+ a22°2¸ ·0 ¢¢

A¡0 = a11

a12

°1 = a11°1

+ a12°2 =

2 (¡4) + 0 ¢ (¡4)

=

Тогда (A¡0; ¡0):

(A¡0; ¡0) = (a11°1 + a12°2) ¢ °1 + (a21°1 + a22°2) ¢ °2 =

= 2 ¢ 42 + 4 ¢ 42:

· ¡8 ¸

¡16

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 7]

Подставляя значения скалярных произведений (¡0; ¡0) и (A¡0; ¡0) в выражение для ®0, получим

®0 =

0; ¡0)

 

=

 

42 + 42

=

1

:

(A¡0; ¡0)

2 ¢ 42

+ 4 ¢ 42

3

 

 

 

 

Направление спуска на первом шаге

S0 = ¡¡0:

Тогда

x1 = x0 + ®0S0 = x0 ¡ ®0¡0:

·0¸ ¡ 3 ¢ ·¡4¸ ·4=3¸

x1 = 0

1

¡4 =

4=3

 

x1 = (4=3; 4=3)T :

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 8]

Шаг 2:

2.1. Вычислим градиент в точке x1 = (4=3; 4=3)T :

 

¡

·0

4¸

¢

·4=3¸

¡

·4¸ ·16=3 ¡ 4¸ ·

4=3 ¸

¡1 = Ax1

 

b = 2 0

 

4=3

 

4 = 8=3 ¡ 4 =

¡4=3

Таким образом

¡1 = Ax1 ¡ b = (¡4=3; 4=3)T :

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 9]

2.2. Вычислим коэффициент ¯0 по формуле:

¯0 = (AS0; ¡1); S0 = ¡¡0 = (¡4; ¡4)T ;

(AS0; S0)

¡1 = Ax1 ¡ b = (¡4=3; 4=3)T :

Скалярное произведение (AS0; ¡1) в числителе:

(AS0; ¡1) = 8 ¢ (¡4=3) + 16 ¢ (4=3):

Скалярное произведение (AS0; S0) в знаменателе:

(AS0; S0) = 8 ¢ 4 + 16 ¢ 4:

[Жусубалиев Ж.Т. Методы оптимизации. 2010. Слайд 10]

Подставляя значения (AS0; ¡1), (AS0; S0) в выражение для ¯0 получим:

¯0 =

8 ¢ (¡4=3) + 16 ¢ (4=3)

=

1

:

 

 

8 ¢ 4 + 16 ¢ 4

9

 

 

 

2.3. Вычислим направление спуска S1 для второго шага по формуле:

S1 = ¡¡1 + ¯0S0 = ¡¡1 ¡ ¯0¡0; S0 = ¡¡0

S1

=

·¡4=3¸

¡

9

¢

·4¸

=

·¡8=9¸

 

 

4=3

 

1

 

4

 

16=9

Соседние файлы в папке lecture