Лабораторная работа №5 - Томский политехнический университет

advertisement
Министерство образования и науки РФ
Федеральное государственное автономное образовательное учреждение высшего
образования
Национальный исследовательский
Томский политехнический университет
УТВЕРЖДАЮ
Зам. директора ИК
по учебной работе
_____________С.А. Гайворонский
«___»_________________2015 г.
МЕТОДЫ ОПТИМИЗАЦИИ
Методические указания к выполнению лабораторной работы № 5
«Численные методы многомерной минимизации c использованием
производных второго порядка»
по дисциплине
«Методы оптимизации»
для студентов направления 01.03.02
«Прикладная математика и информатика»
Томск 2015 г.
УДК 519.8 ББК 22.14
Методы оптимизации. Методические указания к выполнению лабораторной
работы № 5. «Численные методы многомерной минимизации c использованием
производных второго порядка» по дисциплине «Методы оптимизации» для
студентов направления 01.03.02 «Прикладная математика и информатика». –
Томск: Изд. НИ ТПУ, 2015. – 7 с.
Составитель – доц. канд. техн. наук Ю. В. Бабушкин
Резензент – доц. канд. техн. наук В. Г. Гальченко
Методические
методическим
указания
рассмотрены
семинаром
и
кафедры
«___»_________2015 г.
Зав. кафедрой
Доцент, к.т.н. _________________Гергет О.М.
рекомендованы
прикладной
к
изучению
математики
Лабораторная работа № 5
Тема: Численные методы многомерной минимизации c использованием
производных второго порядка.
Цель работы: Приобретение практических навыков для решения задач
многомерной минимизации численными методами второго порядка.
1. Постановка задачи
Требуется найти безусловный минимум функции многих переменных
Y  F ( x ) , то есть, такую точку x *  R , что
(1)
F ( x* )  min F ( x) .
xR
2. Методы безусловной оптимизации
Для заданной начальной точки x 0 генерируется последовательность точек
с координатами x 0 , x1 , x 2 ,... .
Переход от точки x k к точке x k 1 представляет собой итерацию.
Численное решение задачи (1) связано с построением последовательности
точек  x k  , обладающих свойством
f ( x k 1 )  f ( x k ), k  0,1,... .
Общее правило построения последовательности  x  имеет вид
(2)
k
x k 1  x k   k p k , k  0,1, 2...,
где p k - направление поиска точки x k 1 из точки x k , а число  k - величина шага,
которая выбирается так, чтобы выполнялось условие f ( x k 1 )  f ( x k ), k  0,1,... .
Эти алгоритмы различаются способом построения вектора p k и выбора
шага  k
3. Методы второго порядка
К методам второго порядка относят:
- метод Ньютона;
- метод Ньютона-Рафсона;
- метод Марквардта.
3.1. Метод Ньютона
Алгоритм метода Ньютона состоит из следующих этапов.
1 этап. Задать начальную точку x 0 , погрешности расчета 1  0 ,  2  0 , M предельное число итераций. Найти градиент функции в произвольной точке
T
 f ( x )
f ( x ) 
f ( x )  
,...,
 и матрицу Гессе H ( x ) .
xn 
 x1
2 этап. Принять k  0 .
3 этап. Вычислить f ( x k ) .
4 этап. Проверить выполнение критерия окончания f ( x k )  1 :
А) если критерий выполнен, расчет закончен x *  x k ;
Б) если критерий не выполнен, то перейти к этапу 5;
5 этап. Проверить выполнение неравенства k  M :
А) если неравенство выполнено, то расчет окончен: x *  x k ;
Б) если нет, то перейти к этапу 6.
6 этап. Вычислить матрицу H ( x k ) .
7 этап. Вычислить матрицу H 1 ( x k ) .
8 этап. Проверить выполнение условия H 1 ( x k )  0 :
А) если H 1 ( x k )  0 , то перейти к этапу 9;
Б) если H 1 ( x k )  0 , то перейти к этапу 10, приняв d k  f ( x k )
9 этап. Определить d k   H 1 ( x k )f ( x k ) .
10 этап. Вычислить x k 1  x k  tk d k , приняв tk  1 , если d k   H 1 ( x k )f ( x k )
или выбрав t k из условия f ( x k 1 )  f ( x k ), если d k  f ( x k ) .
11 этап. Проверить выполнение условий
x k 1  x k   2 ,
f ( x k 1 )  f ( x k )   2
А) если оба условия выполнены при текущем значении k и k  k 1 , то расчет
окончен и x *  x k 1 ;
Б) если хотя бы одно из условий не выполнено, то принять k  k 1 и перейти к
этапу 3.
3.2. Метод Ньютона-Рафсона
Алгоритм метода Ньютона-Рафсона состоит из следующих этапов.
1 этап. Задать начальную точку x 0 , погрешности расчета 1  0 ,  2  0 , M предельное число итераций. Найти градиент функции в произвольной точке
T
 f ( x )
f ( x ) 
f ( x )  
,...,
 и матрицу Гессе H ( x ) .
xn 
 x1
2 этап. Принять k  0 .
3 этап. Вычислить f ( x k ) .
4 этап. Проверить выполнение критерия окончания f ( x k )  1 :
А) если критерий выполнен, расчет закончен x *  x k ;
Б) если критерий не выполнен, то перейти к этапу 5;
5 этап. Проверить выполнение неравенства k  M :
А) если неравенство выполнено, то расчет окончен: x *  x k ;
Б) если нет, то перейти к этапу 6.
6 этап. Вычислить матрицу H ( x k ) .
7 этап. Вычислить матрицу H 1 ( x k ) .
8 этап. Проверить выполнение условия H 1 ( x k )  0 :
А) если H 1 ( x k )  0 , то найти d k   H 1 ( x k )f ( x k ) ;
Б) если H 1 ( x k )  0 , то принять d k  f ( x k ) .
9 этап. Найти шаг t k* из условия  (tk )  f ( x k  tk d k )  min
tk
10 этап. Вычислить x  x  t d .
11 этап. Проверить выполнение условий
k 1
k
*
k
x k 1  x k   2 ,
k
f ( x k 1 )  f ( x k )   2
А) если оба условия выполнены при текущем значении k и k  k 1 , то расчет
окончен и x *  x k 1 ;
Б) если хотя бы одно из условий не выполнено, то принять k  k 1 и перейти к
этапу 3.
3.3. Метод Марквардта
Алгоритм метода Марквардта состоит из следующих этапов.
1 этап. Задать начальную точку x 0 , погрешности расчета 1  0 ,  2  0 , M предельное число итераций. Найти градиент функции в произвольной точке
T
 f ( x )
f ( x ) 
f ( x )  
,...,
 и матрицу Гессе H ( x ) .
xn 
 x1
2 этап. Принять k  0,  k   0 .
3 этап. Вычислить f ( x k ) .
4 этап. Проверить выполнение критерия окончания f ( x k )  1 :
А) если критерий выполнен, расчет закончен x *  x k ;
Б) если критерий не выполнен, то перейти к этапу 5;
5 этап. Проверить выполнение неравенства k  M :
А) если неравенство выполнено, то расчет окончен: x *  x k ;
Б) если нет, то перейти к этапу 6.
6 этап. Вычислить матрицу H ( x k ) .
7 этап. Вычислить матрицу H ( x k )   k E .
8 этап. Вычислить матрицу [ H ( x k )   k E ]1 .
9 этап. Вычислить d k  [ H ( x k )   k E ]1 f ( x k ) .
10 этап. Вычислить x k 1  x k  [ H ( x k )   k E ]1 f ( x k ) .
11 этап. Проверить выполнение условия f ( x k 1 )  f ( x k ),
А) если условие выполняется, то перейти к этапу 12;
Б) если нет, то перейти к этапу 13.
12 этап. Принять k  k  1,  k 1 
k
2
и перейти к этапу 3.
13 этап. Принять  k  2 k и перейти к этапу 7.
Варианты заданий
Варианты заданий приведены в таблице.
Таблица. Варианты заданий
1. f ( x1 , x2 )  ( x1  2)  ( x2  5)
2. f ( x1 , x2 )  100  ( x2  x12 ) 2  (1  x1 ) 2
3. f ( x1 , x2 )  ( x12  x2  11) 2  ( x1  x22  7) 2
4. f ( x1 , x2 )  1  2  x1  2  x2  4  x1  x2  10  x12  2  x22
5. f ( x1 , x2 )  x13  x22  3  x1  2  x2  2
6. f ( x1 , x2 )  5  x12  5  x22  8  x1  x2
7. f ( x1 , x2 )  x13  x22  x1  x2  2 x1  3x2  4
8. f ( x1 , x2 )  [( x2  1)2  x12 ]  [ x12  ( x2  1) 2 ]
9. f ( x1 , x2 )  ( x22  x12  1)2  ( x1  x2  1) 2
10. f ( x1 , x2 )  ( x1  2) 2  ( x2  5) 2
11. f ( x1 , x2 )  100  ( x2  x12 ) 2  (1  x1 ) 2
12. f ( x1 , x2 )  ( x12  x2  11) 2  ( x1  x22  7) 2
13. f ( x1 , x2 )  1  2  x1  2  x2  4  x1  x2  10  x12  2  x22
14. f ( x1 , x2 )  x13  x22  3  x1  2  x2  2
15. f ( x1 , x2 )  5  x12  5  x22  8  x1  x2
16. f ( x1 , x2 )  x13  x22  x1  x2  2 x1  3x2  4
17. f ( x1 , x2 )  [( x2  1)2  x12 ]  [ x12  ( x2  1) 2 ]
18. f ( x1 , x2 )  ( x22  x12  1)2  ( x1  x2  1) 2
2
2
Задание
1. Составить блок-схемы алгоритмов поиска точки экстремума заданной
функции.
2. По разработанным алгоритмам составить программы поиска минимума
функции.
3. Найти координаты и значение функции в точке минимума одним из методов
(по желанию).
4. Найти точное значение координаты точки минимума, используя
необходимые и достаточные условия экстремума.
5. Проанализировать полученные результаты и сделать выводы по достигнутой
точности и количеству вычислений функции.
6. Дать письменные ответы на контрольные вопросы.
Контрольные вопросы
1. Главные отличительные признаки методов второго порядка от методов
первого и нулевого порядков.
2. Отличия метода Ньютона от метода Ньютона-Рафсона и от метода
Марквардта.
Содержание отчета
1. Цель работы.
2. Формулировка задачи.
3. Блок-схемы алгоритмов поиска минимума.
4. Листинги программ.
5. Графическое представление траекторий движения к экстремуму,
полученных соответствующими методами.
6. Результаты вычислений.
7. Сравнительная характеристика методов.
8. Выводы.
Литература
1. Пантелеев А.В., Летова Т.А. Методы оптимизации в примерах и задачах:
Учебное пособие. – М.: Высш. шк., 2002. -544с.
2. Лесин В.В., Лисовец Ю.П. Основы методов оптимизации: Учебное пособие.
– СПб.: Издательство «Лань», 2011. – 352 с.
Временной ресурс:
- аудиторные занятия – 4 часа;
- самостоятельная работа – 9 часов.
Итоговая оценка защиты лабораторной работы
Всего: 9 баллов, в том числе:
- метод Ньютона
- 3 балла;
- метод Ньютона-Рафсона – 3 балла;
- метод Марквардта
– 3 балла.
Численные методы многомерной минимизации c использованием
производных второго порядка
Методические указания к выполнению лабораторной работы
Составитель – Юрий Владимирович Бабушкин
Подписано к печати ___._______. 2015г.
Формат 60*84/16. Бумага офсетная.
Плоская печать. Усл. печ. л. _____. Уч. – изд. л. ____.
Тираж 150 экз. Заказ ____. Цена свободная.
ИПФ НИ ТПУ. Лицензия ЛТ № 1 от 18.07.94.
Типография НИ ТПУ. 634034, Томск, пр. Ленина, 30.
Download