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

Лабы по МетОпт 2024 / Лабораторная работа №2

.pdf
Скачиваний:
0
Добавлен:
09.09.2026
Размер:
383 Кб
Скачать
МИНОБРНАУКИ РОССИИ
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ
ЭЛЕКТРОТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
«ЛЭТИ» ИМ. В.И. УЛЬЯНОВА (ЛЕНИНА)
Кафедра МО ЭВМ
по лабораторной работе №2
по дисциплине «Методы оптимизации»
Тема: исследование методов условной минимизации
Студенты гр. 2382
Ивашинников Л.Д.
Ульянова Е.А.
Семененко А.С.
Вакуленко И.Ю.
Щёголева Н.Д.
Преподаватель
Балтрашевич В.Э.
Санкт-Петербург
2024
2
Цель работы
Исследовать методы условной минимизации.
Задание
1. Запустить bound.exe.
2. Провести исследования всех методов условной минимизации
поочерёдно
a. для следующих значений параметра a: 0,1; 1; b. для следующих значений параметра b: 0; 3; c. при разных начальных точках: (3, 8); (3, 10); (10, 20).
3. В отчёте привести a. целевую функцию; b. формулы всех исследованных методов; c. результаты испытаний методов; d. сравнительный анализ методов условной оптимизации.
Примечание: после выбора метода безусловной минимизации, нажать
ENTER и выбрать один из методов безусловной минимизации.
Основные теоретические положения
Рассматривается задача поиска минимума функции на допустимом
множестве :
󰇝
󰇛󰇜
 󰇞, где  и все 
выпуклы.
Метод проекции градиента. Метод проекции градиента является
обобщением градиентного метода для задачи условной минимизации с
выпуклым допустимым множеством. Так как возможен выход за пределы
допустимого множества, то вводится операция проектирования на  (поиск ближайшей точки на ):


 󰇛
󰇜
, где  – проектор на .
Пример. Если круг, то проекция точки на есть точка пересечения
окружности и прямой, соединяющей центр и проектирующую точку.
3
Метод обладает теми же достоинствами и недостатками, что и
градиентный метод с постоянным шагом.
Метод условного градиента. В очередной точке 
линеаризуют функцию
󰇛
󰇜
(в этом «условность» метода, т.е. линеаризация и есть «условие» в
названии). Затем решают задачу минимизации линейной функции на и найденную точку
используют для выбора направления движения:
󰇛󰇛
󰇜󰇜

 
󰇛
 
󰇜
При этом предполагается:
1. Задача минимизации линейной функции на имеет решение.
2. Это решение может быть найдено достаточно просто, лучше всего в
явной форме.
3. Нужно указать правило выбора . Значение
можно определить из
условия наискорейшего спуска:


 󰇛 
󰇜
В этом случае последовательность
сходится к стационарной точке. В
частности, для гладких функций верно: 󰇛
󰇜
 
󰇡
 
󰇢
, где  󰇛
󰇜
на множестве .
Метод модифицированной функции Лагранжа. Функцией Лагранжа в ЗВП
называется функция
󰇛󰇜󰇛󰇜

󰇛󰇜

󰇛󰇜 󰇛
󰇜
, где .
Ранее была доказана теорема о седловой точке: если выполняется
соотношение 󰇛󰇜󰇛
󰇜
󰇛
󰇜
 , , то точка 
является оптимальной точкой задачи выпуклого программирования.
Это соотношение можно записать иначе:
󰇛
󰇜




󰇛󰇜



󰇛󰇜󰇛
󰇜 󰇛󰇜
Если назвать прямыми переменными, а двойственными, то видно, что
прямые и двойственные переменные равноправны.
4
Теорема Куна-Таккера позволяет исходную задачу заменить задачей
отыскания седловой точки функции Лагранжа, т.е. задачи вида 



󰇛
󰇜
.
Метод Эрроу-Гурвица ориентирован на поиск седловой точки функции
󰇛
󰇜
.
Метод Эрроу-Гурвица. Итерационная формула для вычисления
последовательность
󰇝

󰇞
имеет вид

 


󰇛

󰇜
 󰇛
󰇜󰇛󰇛
󰇜

󰇜

 


󰇛

󰇜
 󰇛
󰇜
Последовательность
󰇝

󰇞
при достаточно хорошем начальном
приближении сходится к седловой точке функции .
Вместо функции Лагранжа можно использовать некоторую её
модификацию для улучшения свойств сходимости предложенного
итерационного метода. Метод модифицированной функции Лагранжа обладает
лучшими характеристиками по сравнению с предыдущими методами.
Определение. Модифицированной функцией Лагранжа называется
функция вида
󰇛󰇜󰇛󰇜

  󰇛
󰇜


где  – некоторый параметр (штраф);  – взятие положительной части.
Свойства модифицированной функции Лагранжа. Если   󰇛󰇜, то
1. 󰇛󰇜󰇛󰇜󰇛
󰇜
 
󰇛󰇜
, где
 
󰇛󰇜
– добавка
(штраф) за то, что 󰇛󰇜.
2. 

󰇛󰇜󰇛󰇜 (функция Лагранжа), иначе 

󰇛󰇜.
Метод модифицированной функции Лагранжа. Итерационная формула
для вычисления последовательности
󰇝

󰇞
имеет вид

 󰇛󰇜

󰇟 󰇛


󰇜󰇠
5
Метод сходится к
󰇛

󰇜
со скоростью геометрической прогрессии.
Выполнение работы
Целевая функция 󰇛 󰇜󰇛  
󰇜
 󰇛    
󰇜
, ограничения 
󰇛
  
󰇜
󰇛  
󰇜
 , 󰇛  
󰇜
󰇛  
󰇜
 .
Метод проекции градиента. Результаты работы алгоритма при различных параметрах, стартовых точках и методах приведены в таблицах 1-4. Таблица 1 – Метод проекции градиента, метод наискорейшего спуска
(x, y)/(a, b)
За сколько шагов сошёлся («–», если не сошёлся)






(3, 8)
2 – 4 – (3, 10)
3 – 4 – (10, 20)
1 – 3
Процесс работы с программой показан на рисунках 1-3.
Рисунок 1 – Указание параметров в программе
Рисунок 2 – Результат работы программы, метод сходится
Рисунок 3 – Результат, метод не сходится: a = 1, b = 3, (x, y) = (3, 8)
6
Комментарий: при значении параметра b = 3 метод не сходится, причём, как видно из результатов работы программы, на некоторых шагах значения x, y перестают меняться, это связано с застреванием метода в локальном минимуме
негладкой функции. Для гладких функций метод сходится максимум за 4 шага,
что свидетельствует о быстрой сходимости.
Таблица 2 – Метод проекции градиента, метод Ньютона с одномерной минимизацией
(x, y)/(a, b)
За сколько шагов сошёлся («–», если не сошёлся)






(3, 8)
– – 1 – (3, 10)
– – 1 – (10, 20)
– – 1
Процесс работы с программой показан на рисунке 4.
Рисунок 4 – Начальная точка (10, 20), a = 1, b = 0
Метод проекции градиента с методом Ньютона сочетает вычисление
градиента целевой функции для нахождения направления спуска с проекцией на
допустимую область, а также использование метода Ньютона для ускорения
сходимости. Проекция обеспечивает выполнение ограничений, а метод Ньютона
помогает ускорить нахождение минимума на следующем шаге. При начальных точках (3, 8); (3, 10); (10, 20) и параметрах (a = 1; b = 0) метод сходится за один
7
шаг. При остальных параметрах метод не сходится совсем, либо за огромное
количество шагов.
Таблица 3 – Метод проекции градиента, градиентный метод с дроблением шага
(x, y)/(a, b)
За сколько шагов сошёлся («–», если не сошёлся)






(3, 8)
9 – 16 – (3, 10)
9 – 17 – (10, 20)
11 – 19
Процесс работы с программой показан на рисунке 5.
Рисунок 5 – Работа метода при a = 0,1; b = 0 и начальной точке (3, 8)
Скорость сходимости метода зависит от выбора параметров a и b, а также начальных точек, при a = 0,1 метод сходился за 9-11 шагов для всех стартовых точек, при a = 1 для тех же начальных точек скорость сходимости увеличивалась (16-19 шагов), при некоторых значениях параметра b метод вообще не сходится.
Таблица 4 – Метод проекции градиента, метод Полака-Ривьера
(x, y)/(a, b)
За сколько шагов сошёлся («–», если не сошёлся)






(3, 8)
– – 5 – (3, 10)
– 8 – 6 (10, 20)
12 7 5
Процесс работы с программой показан на рисунке 6.
8
Рисунок 6 – Метод проекции градиента в сочетании с методом Полака-Ривьера
Для малых значений параметра шага a = 0,1, наблюдается плохая сходимость или её отсутствие, особенно в случаях, когда параметр b = 0, что может указывать на недостаточное ускорение метода.
При увеличении параметра a до 1, метод показал лучшую сходимость для некоторых начальных точек, таких как (3, 8) и (10, 20). Однако для сложных
начальных условий метод иногда не сходился, что может быть связано с
чувствительностью к выбору параметров.
Метод условного градиента. Результаты работы алгоритма при различных параметрах, стартовых точках и безусловных методах приведены в таблице 5. Таблица 5 – Метод условного градиента
(x, y)/(a, b)
За сколько шагов сошёлся («–», если не сошёлся)






(3, 8)
3 – 1 – (3, 10)
2 – 1 – (10, 20)
3 – 1
Процесс работы с программой показан на рисунках 7-8.
9
Рисунок 7 – Результат работы программы, метод сходится
Рисунок 8 – Результат работы программы, метод не сходится
Комментарий: метод демонстрирует сходимость за 1 шаг при значениях
параметров: a = 1, b = 0, тогда как при b = 3 не сходится, застревая в локальных минимумах. В некоторых случаях для b = 3 вычисления прерываются после определённого шага.
Метод модифицированной функции Лагранжа. Результаты работы алгоритма при различных параметрах, стартовых точках и безусловных методах приведены в таблице 6.
10
Таблица 6 – Метод функции Лагранжа
(x, y)/(a, b)
За сколько шагов сошёлся («–», если не сошёлся)






(3, 8)
10 – – – (3, 10)
– – 20 – (10, 20)
– – –
30
Процесс работы с программой показан на рисунке 9.
Рисунок 9 – Метод функции Лагранжа
Этот метод в большинстве случаев не продемонстрировал сходимости за
разумное число шагов, особенно при использовании параметров a = 1 и различных значений b. Даже при успешной сходимости, например, для точки (3,
8), требовалось значительное количество шагов. В целом, метод показал себя
менее стабильным и более чувствительным к выбору стартовых точек и
параметров штрафа по сравнению с методом проекции градиента.
Выводы
Были исследованы методы условной минимизации. Все методы показали себя по-разному. Не нашлось метода, который бы сошёлся для всех комбинаций параметров и стартовых точек. Методы, если сходились, то за разумное (до 20) количество шагов.