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

лабы / Лаба_чм_№7

.pdf
Скачиваний:
0
Добавлен:
13.05.2026
Размер:
449.94 Кб
Скачать

Министерство цифрового развития, связи и массовых

коммуникаций Российской Федерации

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования

Московский технический университет связи и информатики

___________________________________________________________________

Кафедра «Информатики»

Лабораторная работа №7 по дисциплине Численные методы «Методы многомерной оптимизации»

Выполнил

 

Студент группы БИК2205

_________________________

Проверил

 

Старший преподаватель

_________________________ Мацкевич А.Г.

Москва 2024

1. Исходные данные

f x,y 3 x2 +y2 -15 – исследуемая функция;

Метод «ручного» расчёта: градиентный спуск с дроблением шага

(ГСДШ); Метод программного расчёта: наискорейший спуск (метод Коши).

2. Проверка существования минимума функции

Если функция является выпуклой и у неё существует глобальный

минимум, то существующий глобальный минимум одновременно является и локальным.

Необходимо проверить, что исследуемая функция является выпуклой на множестве рациональных чисел.

 

 

 

 

2

f x,y

 

 

 

 

 

 

 

 

 

 

 

x2

 

x y

f x,y

 

6 0

 

 

G x,y

 

 

 

 

 

– матрица

 

∂ ∂ f x,y

 

2

 

 

 

0 2

 

 

 

 

 

 

 

f x,y

 

 

 

Гессе

 

 

 

y x

 

 

y2

 

 

 

 

 

 

 

1

2

f x,y →6

 

 

2

 

 

 

2

f x

 

 

x2

2

x2

f x,y

 

,y →12

 

 

 

 

 

 

 

 

 

y2

 

 

 

Так как диагонали матрицы Гессе и угловые миноры не равны нулю,

исследуемая функция является выпуклой на множестве рациональных чисел.

3. Поиск минимума аналитическим способом

Необходимые условия существования точки экстремума: первые

частные производные по каждому из параметров исследуемой функции должны быть равны нулю.

 

 

 

 

 

 

 

 

 

 

 

x

f x,y

 

6 x

 

6

x 0

 

solve,x,y

 

 

 

 

2

 

 

2

y 0

 

―――→ 0 0

 

y

 

 

 

 

 

f x,y

 

 

 

 

 

 

 

 

y

 

 

 

 

 

 

 

 

 

Таким образом, минимум исследуемой функции достигается при

равенстве нулю обоих аргументов.

f 0,0 =-15 – предполагаемый минимум исследуемой функции.

4. «Ручной» расчёт с помощью метода ГСДШ

Необходимо просчитать три итерации метода ГСДШ для поиска

минимума исследуемой функции.

Исходные величины:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x0 1

λ 0.5

g1 x,y f x,y

g2 x,y f x,y

y0 1

 

 

 

 

 

 

 

 

 

x

 

 

 

 

y

 

Нулевая итерация:

g1 x0,y0 =6

 

g2 x0,y0 =2

λ0 λ=0.5

f x0,y0 =-11

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1 x0

-λ0 g1 x0,y0 =-2 y1 y0-λ0

g2 x0

,y0 =0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поиск точек:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

первая итерация

 

 

 

λ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

2

 

 

2

 

 

 

 

g1

 

 

 

=0

 

f x0,y0

-f x1

,y1

2

x0,y0

+g2 x0,y0

 

 

так как 0:

 

 

 

 

 

 

 

 

 

 

 

 

 

x0-λ0

g1 x0

,y0 y1 y0

-λ0 g2

x0

,y0

λ0 λ0÷2 x1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вторая итерация

 

 

 

λ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

2

 

 

2

 

 

 

 

g1

 

 

 

=0

 

f x0,y0

-f x1

,y1

2

x0,y0

+g2 x0,y0

 

 

так как 0:

 

 

 

 

 

 

 

 

 

 

 

 

 

x0-λ0

g1 x0

,y0 y1 y0

-λ0 g2

x0

,y0

λ0 λ0÷2 x1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

третья итерация

 

 

λ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

2

 

2

 

 

 

 

+g2

 

 

=1

 

f x0,y0

-f x1

,y1

2

g1 x0

,y0

x0,y0

 

так как 1:

 

 

 

 

 

 

 

 

 

 

 

 

-λ0

g1

x0,y0

y1 y0

-λ0 g2

x0

,y0

λ0 λ0

 

x1 x0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

λ0=0.125

x1=0.25

 

y1=0.75

 

 

 

 

 

 

 

Первая итерация:

f x1,y1 =-14.25 g1 x1,y1 =1.5 g2 x1,y1 =1.5 λ1 λ=0.5 x2 x1-λ1 g1 x1,y1 =-0.5 y2 y1-λ1 g2 x1,y1 =0

Поиск точек:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

первая итерация

 

 

λ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

2

 

2

 

 

 

g1

+g2

 

 

=0

 

f x1

,y1

-f x2

,y2

2

x1,y1

x1,y1

 

так как 0:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g1

x1

,y1

y2 y1

-λ1 g2

x1

,y1

λ1 λ1÷2 x2 x1-λ1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вторая итерация

 

 

λ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

2

 

2

 

 

 

g1

+g2

 

 

=1

 

f x1

,y1

-f x2

,y2

2

x1,y1

x1,y1

 

так как 1:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g1

x1

,y1

y2 y1

-λ1 g2

x1

,y1

λ1 λ1

x2 x1-λ1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

λ1=0.25 x2=-0.125 y2=0.375

Вторая итерация:

f x2,y2 =-14.813 g1 x2,y2 =-0.75 g2 x2,y2 =0.75 λ2 λ x3 x2-λ2 g1 x2,y2 =0.25 y3 y2-λ2 g2 x2,y2 =0

Поиск точек:

первая итерация

 

 

λ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

2

 

2

 

 

 

g1

+g2

 

 

=0

 

f x2

,y2

-f x3

,y3

2

x2,y2

x2,y2

 

так как 0:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g1

x2

,y2

y3 y2

-λ2 g2

x2

,y2

λ2 λ2÷2 x3 x2-λ2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вторая итерация

 

 

λ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

2

 

2

 

 

 

g1

+g2

 

 

=1

 

f x2

,y2

-f x3

,y3

2

x2,y2

x2,y2

 

так как 1:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g1

x2

,y2

y3 y2

-λ2 g2

x2

,y2

λ2 λ2

x3 x2-λ2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

λ2=0.25 x3=0.062

 

y3=0.188 f x3,y3 =-14.953

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Результаты просчёта трёх итераций методом градиентного спуска с

дробным шагом представлены ниже в таблице.

k

xk

yk

f x,y g1 x,y g2 x,y

λk

 

 

 

 

 

 

 

0

1

1

-11

6

2

0.125

1

0.25

0.75

-14.25

1.5

1.5

0.25

2

-0.125

0.375 -14.813

-0.75

0.75

0.25

3

0.062

0.188 -14.953

 

 

 

5. Программный расчёт методом наискорейшего спуска

Необходимо найти минимум исследуемой функции методом НС

(методом Коши).

входные данные

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F x,y 3 x2 +y2 -15

 

– исходная функция;

 

 

 

 

x0 1

y0 1

 

 

 

– координаты начальной точки;

 

ε 10-4

 

 

 

 

– требуемая точность;

 

 

 

тело программы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

F x,y

 

6 x

Λ x,y

,S -

y S1

+3 x S0

grad x,y

 

 

 

 

S

2 +3 S

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

2 y

 

 

1

 

0

 

 

 

 

 

 

 

 

F x,y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

 

 

 

 

Koshi func,Λ,x,y,ε

k←0

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

x x

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

y y

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

k

 

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

F func x ,y

 

 

 

 

|

 

 

 

 

 

k

 

 

k

 

k

 

 

 

 

|

 

 

 

 

 

while|grad

x ,y |>ε

 

 

||

 

 

 

 

 

 

|

 

 

k

 

k |

 

 

 

||

 

 

 

 

 

S←- grad

x ,y ÷|grad x ,y | ||

 

 

 

 

 

 

 

 

 

k k

|

 

k k | ||

 

 

 

 

 

L Λ x ,y ,S

 

 

 

||

 

 

 

 

 

 

 

 

||

 

 

 

 

 

k

k

 

k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

||

 

 

 

 

 

x x +L S

 

 

 

 

||

 

 

 

 

 

k+1

k

 

k

 

 

0

 

 

 

||

 

 

 

 

 

y y +L S

 

 

 

 

||

 

 

 

 

 

k+1

k

 

k

 

 

1

 

 

 

||

 

 

 

 

 

F

 

func x ,y

 

 

 

||

 

 

 

 

 

k+1

 

 

 

 

k k

 

 

 

||

 

 

 

 

 

kk+1

 

 

 

 

 

 

 

 

||

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

||

 

 

 

 

 

res←stack k , x , y , F , L |

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

|

 

 

 

 

 

res

 

 

 

 

 

 

 

 

 

|

Answ Koshi F,Λ,x0,y0,ε

Answ =10

0

 

 

1

 

 

 

 

-0.071

 

 

 

 

 

 

 

 

0.107

 

 

 

 

-7.653

10-3

 

 

 

0.011

 

 

 

 

 

 

Answ =

-8.2 10-4

1

 

1.23 10-3

 

 

 

 

 

 

-8.785

10-5

 

 

1.318

10-4

 

 

 

 

 

 

-9.413

10-6

 

 

1.412

10-5

 

 

 

 

иксовая координата

 

 

 

-11

 

 

 

 

 

-11

 

 

 

 

 

 

 

 

 

 

-14.571

 

 

 

 

-14.954

 

 

 

 

-14.995

 

Answ

 

 

 

 

=

-14.999

 

3

 

-15

 

 

 

 

 

-15

 

 

 

 

 

 

 

 

 

 

-15

 

 

 

 

 

-15

 

 

 

 

 

 

 

 

 

 

-15

 

 

значения функции

 

 

 

1

 

 

 

-0.071

 

 

Xk

 

 

 

 

0.107

 

 

 

-0.008

 

 

 

 

 

– количество шагов

 

 

1

 

 

 

 

 

0.643

 

 

 

 

 

 

 

 

 

 

0.107

 

 

 

 

 

0.069

 

 

 

 

 

0.011

 

 

 

 

 

 

 

 

Answ

=

7.38 10-3

 

2

 

1.23 10-3

 

 

7.907

10-4

 

 

 

 

 

 

1.318

10-4

 

 

8.472

10-5

 

 

 

 

 

 

1.412

10

-5

 

 

 

 

 

игрековая координата

 

 

 

1.129

 

 

 

 

 

 

0.565

 

 

 

 

 

 

 

 

 

 

 

 

0.121

 

 

 

 

 

 

0.061

 

 

 

 

 

 

0.013

 

 

 

Answ =

 

10

-3

 

4

 

6.482

 

 

 

 

 

1.389

10-3

 

 

 

6.945

10-4

 

 

 

 

 

 

 

 

1.488

10-4

 

 

 

7.442

10-5

 

 

 

 

 

значения шага

 

 

 

 

1

 

 

 

 

 

0.643

 

 

 

 

Yk

 

 

 

 

 

0.107

 

 

 

 

0.069

 

 

 

1.015

 

 

 

 

 

 

 

 

 

 

 

 

 

0.92

 

 

 

 

 

 

 

 

 

 

 

 

 

0.825

 

 

 

 

 

 

 

 

 

 

 

 

 

0.73

 

 

 

 

 

 

 

 

 

 

 

 

 

0.635

 

 

 

 

 

 

 

 

 

 

 

 

 

0.54

 

 

 

 

 

 

 

 

 

yk

 

 

 

0.445

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0.35

 

 

 

 

 

 

 

 

 

Yk

 

 

 

0.255

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0.16

 

 

 

 

 

 

 

 

 

 

 

 

 

0.065

 

 

 

 

 

 

 

 

 

 

 

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

 

 

 

 

 

 

 

xk

 

 

 

 

 

 

 

 

 

 

 

 

 

Xk

 

 

 

 

 

 

X,Y

– точки метода НС (чёрный пунктирный график);

 

x,y – точки метода ГСДШ (синий сплошной график).

 

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