МИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра МО ЭВМ
отчет
по лабораторной работе № 1
по дисциплине «Методы оптимизации»
Тема: Методы безусловной минимизации функций.
Студентка гр. 3384 |
|
|
Преподаватель |
|
Мальцева Н. В. |
Санкт-Петербург
2025
Цель работы.
Решение задачи безусловной минимизации функций с помощью стандартной программы. Исследование и объяснение полученных результатов.
Задание. (Вариант 56)
1. Минимизировать функцию F(x1,x2,a)=(x2-x12)2 +a(x1-1)2 с точностью до 10-5 (abs(F(x1k,x2k,a)-F(x1*,x2*,a))<10-5) методом наискорейшего спуска для следующих значений входных параметров.
Начальные точки: (12,6),(-16,4),(-11,-9), (-13,10). Параметр: а = 3.
2. Оценить скорость и порядок сходимости метода. Заполнить таблицу 1, вид которой приведен в методических указаниях.
3. Провести сравнительный анализ эффективности метода в зависимости от начальной точки. Заполнить таблицу 2, вид которой приведен в методических указаниях.
Описание метода минимизации и его теоретических характеристик.
Метод наискорейшего спуска — это итерационный численный метод решения оптимизационных задач, который позволяет определить минимум целевой функции.
Метод заключается в построении релаксационной последовательности {xk} такой что xk+1=xkk(xk), где k=arg min (xkk(xk)). Другими словами, k выбирается так, чтобы (xk+1) в заданном направлении была наименьшей для чего на любом шаге необходимо решать задачу одномерной минимизации функции.
Нахождение локального минимума.
Подставим значение a в функцию.
Найдем стационарную точку, которая получается из F=0.
(1)
(2)
Приравняем (1) к 0 получим x2=x12. Подставим полученное в (2), приравняем к 0 и получим, что x1=1, тогда x2=1. Следовательно точка имеет вид x*= (1, 1), а F(x*)=0.
Рассмотрим матрицу Гессе:
Подставим в нее x*= (1, 1) и получим:
Если вычислить определитель данной матрицы, то понятно, что матрица является положительно определенной, значит найденная стационарная точка действительно является локальным минимумом.
Также можно вычислить собственные числа: 1 ~ 15,2 , 2 ~ 0,8, а также число обусловленности (H) ~ 19,3. Отсюда можно найти величину теоретической оценки линейного множителя сходимости для нашего метода, которая вычисляется по формуле:
Получим, что ~ 0,8. Это означает, что при локальном квадратичном приближении ожидается линейное уменьшение значения функции с множителем ~ 0,8 за шаг.
Выполнение работы.
В таблице 1 показаны значения координат x1, x2, значение функции F(x1,x2), а также вычисленные оценки скорости и порядка сходимости метода наискорейшего спуска при начальной точке (12, 6).
Таблица 1. Оценка скорости и порядка сходимости метода наискорейшего спуска для следующих значений входных параметров (12, 6).
|
|
|
|
Оценка скорости сходимости |
Оценка порядка сходимости |
Номер шага |
X1 |
X2 |
F(x1, x2) |
|
|
60 |
1,001410 |
1,005062 |
0,0000109839 |
|
|
61 |
1,001579 |
1,003605 |
0,0000076734 |
0,698543019 |
1,012588383 |
62 |
1,000985 |
1,003536 |
0,0000053602 |
0,698201560 |
1,051647846 |
63 |
1,001102 |
1,002517 |
0,0000037425 |
0,698142953 |
1,011811781 |
64 |
1,000687 |
1,002469 |
0,0000026128 |
0,698484385 |
1,048464761 |
65 |
1,000770 |
1,001758 |
0,0000018250 |
0,698410959 |
1,011181423 |
66 |
1,000480 |
1,001724 |
0,0000012746 |
0,698885925 |
1,045654366 |
67 |
1,000538 |
1,001228 |
0,0000008908 |
0,698922317 |
1,010503338 |
68 |
1,000335 |
1,001205 |
0,0000006226 |
0,698843559 |
1,043093958 |
69 |
1,000376 |
1,000859 |
0,0000004351 |
0,698919789 |
1,010102847 |
70 |
1,000234 |
1,000842 |
0,0000003041 |
0,698454456 |
1,040919262 |
71 |
1,000263 |
1,000600 |
0,0000002124 |
0,698210923 |
1,009633311 |
Таблица 2 содержит аналогичные значения и оценки для точки (-16, 4).
Таблица 2. Оценка скорости и порядка сходимости метода наискорейшего спуска для следующих значений входных параметров (-16,4).
|
|
|
|
Оценка скорости сходимости |
Оценка порядка сходимости |
Номер шага |
X1 |
X2 |
F(x1, x2) |
|
|
41 |
1,001990 |
1,004300 |
0,0000119748 |
|
|
42 |
1,001200 |
1,004253 |
0,0000077478 |
0,646312502 |
1,067684422 |
43 |
1,001287 |
1,002778 |
0,0000050075 |
0,646210684 |
1,012059811 |
44 |
1,000775 |
1,002748 |
0,0000032359 |
0,646157174 |
1,062649662 |
45 |
1,000831 |
1,001795 |
0,0000020909 |
0,646085418 |
1,011155581 |
46 |
1,000501 |
1,001776 |
0,0000013509 |
0,646828041 |
1,058209134 |
47 |
1,000537 |
1,001161 |
0,0000008738 |
0,646715496 |
1,010489204 |
48 |
1,000324 |
1,001148 |
0,0000005651 |
0,647142099 |
1,054287716 |
49 |
1,000348 |
1,000751 |
0,0000003657 |
0,638774952 |
1,009848357 |
50 |
1,000209 |
1,000743 |
0,0000002336 |
0,655821918 |
1,050994546 |
51 |
1,000225 |
1,000486 |
0,0000001532 |
0,647519582 |
1,009158646 |
52 |
1,000136 |
1,000481 |
0,0000000992 |
0,646169355 |
1,047946371 |
В таблице 3 содержатся аналогичные значения и оценки для стартовой точки (-11, -9).
Таблица 3. Оценка скорости и порядка сходимости метода наискорейшего спуска для следующих значений входных параметров (-11, -9).
|
|
|
|
Оценка скорости сходимости |
Оценка порядка сходимости |
Номер шага |
X1 |
X2 |
F(x1, x2) |
|
|
23 |
0,998273 |
0,993900 |
0,0000159663 |
|
|
24 |
0,998182 |
0,996163 |
0,0000099605 |
0,624004819 |
1,012916752 |
25 |
0,998922 |
0,996193 |
0,0000062154 |
0,623338804 |
1,072646667 |
26 |
0,998866 |
0,997608 |
0,0000038743 |
0,623441654 |
1,011926289 |
27 |
0,999328 |
0,997627 |
0,0000024154 |
0,624037427 |
1,066740130 |
28 |
0,999293 |
0,998507 |
0,0000015073 |
0,624029722 |
1,011014129 |
29 |
0,999580 |
0,998519 |
0,0000009406 |
0,623538167 |
1,062021652 |
30 |
0,999559 |
0,999069 |
0,0000005865 |
0,623529412 |
1,010191468 |
31 |
0,999738 |
0,999076 |
0,0000003657 |
0,622641509 |
1,058197905 |
32 |
0,999725 |
0,999421 |
0,0000002277 |
0,622749231 |
1,009519761 |
33 |
0,999837 |
0,999425 |
0,0000001418 |
0,622708039 |
1,054284083 |
34 |
0,999899 |
0,999639 |
0,0000000883 |
0,622876557 |
1,010809054 |
Таблица 4 содержит аналогичные значения и оценки для точки (-13, 10).
Таблица 4. Оценка скорости и порядка сходимости метода наискорейшего спуска для следующих значений входных параметров (-13, 10).
|
|
|
|
Оценка скорости сходимости |
Оценка порядка сходимости |
Номер шага |
X1 |
X2 |
F(x1, x2) |
|
|
68 |
1,001720 |
1,004967 |
0,0000111981 |
|
|
69 |
1,001026 |
1,004465 |
0,0000089736 |
0,801250334 |
1,015616386 |
70 |
1,001378 |
1,003980 |
0,0000071901 |
0,801296227 |
1,025162517 |
71 |
1,000822 |
1,003577 |
0,0000057614 |
0,801176797 |
1,014971304 |
72 |
1,001104 |
1,003189 |
0,0000046159 |
0,801165537 |
1,024181163 |
73 |
1,000659 |
1,002866 |
0,0000036981 |
0,801087045 |
1,014486204 |
74 |
1,000884 |
1,002554 |
0,0000029625 |
0,801080169 |
1,023218247 |
75 |
1,000528 |
1,002296 |
0,0000023732 |
0,801070285 |
1,013964735 |
76 |
1,000708 |
1,002046 |
0,0000019011 |
0,801009942 |
1,022420339 |
77 |
1,000422 |
1,001839 |
0,0000015228 |
0,800958760 |
1,013434807 |
78 |
1,000567 |
1,001639 |
0,0000012197 |
0,800934656 |
1,021652455 |
79 |
1,000338 |
1,001473 |
0,0000009769 |
0,800798444 |
1,012960561 |
Сравнение полученных результатов.
Сравнив средние показатели таблиц 1-4 можно заметить, что при всех четырёх стартовых точках метод наискорейшего спуска демонстрирует преимущественно линейную сходимость (порядок сходимости ~ 1), но с различной скоростью в зависимости от начальной точки.
Для начальной точки (-11,-9) наблюдается наилучшая динамика, так как средняя оценка коэффициента сходимости ~ 0,623 и средний оценочный порядок ~ 1,035, при этом значение целевой функции на последних записанных итерациях падает с ~1,6·10⁻⁵ до ~1,42·10⁻⁷. Это означает, что каждое следующее приближение в среднем уменьшает отклонение сильнее, чем в остальных случаях, поэтому эта точка даёт наиболее быструю сходимость.
Вторая по эффективности стартовая точка это (-16,4), так как средний коэффициент ~ 0,647 и средний порядок ~ 1,037, падение значения функции также достигает порядка 10⁻⁷, что подтверждает устойчивую линейную сходимость с чуть худшим множителем сокращения погрешности по сравнению с предыдущей точкой.
Для точки (12,6) коэффициент сходимости хуже (~ 0,699), порядок ~ 1,027, а конечные значения функции оказались ниже, чем в двух лучших случаях, но темп уменьшения функции на итерациях заметно медленнее.
Худшая по поведению точка это (-13,10), так как средний коэффициент ~ 0,801 и средний порядок ~ 1,019, а снижение значения функции за те же отрезки итераций существенно медленнее, что указывает на более медленную сходимость.
Из этих рассуждений следует, во-первых, что различия в начальных условиях сильно влияют на скорость метода наискорейшего спуска: чем меньше средний коэффициент сходимости (то есть чем ближе к нулю), тем быстрее убывает значение функции и тем меньше итераций требуется для достижения заданной точности. Во-вторых, поскольку порядок сходимости во всех экспериментах близок к единице, метод остаётся линейным по характеру.
Сравнение полученных оценок с теоретическими.
В изложенных выше эмпирических наблюдениях прослеживается чёткая картина влияния начальной точки на скорость сходимости. Чтобы сопоставить полученные численные результаты с теоретическими ожиданиями, необходимо перейти к их аналитическому сравнению.
В таблицах 1-4 наблюдаются средние коэффициенты сходимости равные примерно: 0,623, 0,647, 0,699, 0,801 для разных стартовых точек. Теоретическая локальная оценка, полученная через Гессиан в точке x∗, даёт β ~ 0,8. Это согласуется с наихудшим наблюдаемым значением (~ 0,801), то есть для некоторых стартовых точек поведение близко к локальной квадратичной модели.
Для других же стартовых точек наблюдаемая оценка сходимости существенно быстрее теоретической оценки. Это объясняется, во-первых, тем что далеко от минимума поведение функции нелинейно и эффективная локальная обусловленность может быть лучше. Во-вторых, направление градиента при данных стартовых точках дает более благоприятный шаг, чем усреднённый теоретический.
Сравнение эмпирических результатов с теоретическими предсказаниями подтверждает общий характер ожидаемой линейной сходимости метода. Экспериментальные оценки порядка сходимости находятся близко к единице, что согласуется с базовыми теоремами для градиентного спуска.
Оценка эффективности метода.
Таблица 5 содержит число итераций, которые потребовались методу наискорейшего спуска для достижения заданной точности для каждой из четырёх стартовых точек.
Таблица 5. Оценка эффективности метода наискорейшего спуска в зависимости от начальной точки.
-
Начальные точки
Количество шагов метода для достижения заданной точности
(x1=12, x2=6)
61
(x1=-16, x2=4)
42
(x1=-11, x2=-9)
24
(x1=-13, x2=10)
69
Рассмотрев данные таблицы 5, можно отметить количественный эффект. Это подтверждает рассуждение о том, что (-11,-9) это наиболее удачная стартовая точка с точки зрения скорости сходимости, а вот (-13,10) наименее удачная. Из этого можно сделать вывод, что при использовании метода наискорейшего спуска стоит подбирать стартовую точку ближе к направлению наибольшего убывания функции (то есть в область, где градиент ведёт к минимуму), чтобы нивелировать влияние плохой обусловленности и уменьшить число итераций.
