Задача 1 (16.88)
Минимизировать функцию f(x) на всей числовой оси методом Ньютона. Критерием достижения требуемой точности считать выполнение неравенства
.Решение:
Найдем первую и вторую производные исходной функции:
Выберем начальное приближение
. И осуществим вычисления по формулеРезультаты запишем в таблице
n | |||
0 | 0 | 2 | 1 |
1 | -0,2 | 1,91 | -0,1649 |
2 | -0,175697 | 1,908525 | -0,0032 |
3 | -0,17520305 | 1,908524 | -0,0000013 |
n=1
n=2
n=3
n=4
Далее мы заканчиваем вычисления, потому что данная точность
достигнута. В результате мы получаем: и .Осуществим проверку при помощи встроенной функции Minimize:
,Ответ:
иЗадача 2 (16.115)
Выписать матрицу Q квадратичной функции f(x), найти ее градиент
в точке и убедиться в выпуклости f(x) в . ,Решение:
Запишем исходную функцию в следующем виде:
,где
Тогда матрица Q примет вид:
Найдем градиент
в точке по формуле , где r – вектор-столбец и равен :Подставляя в полученную матрицу
, мы получаем следующее значение градиента в данной точке:Теперь убедимся в выпуклости f(x) в
. Для того, чтобы исходная функция была выпуклой в , достаточно, чтобы матрица Q была положительно определена. Для этого найдем угловые миноры матрицы Q и если они будут больше нуля, то функция f(x) будет выпуклой в . ,Так как
, ,то функция f(x) выпукла в .Проверка в Mathcad:
Проверка на выпуклость и нахождение градиента в точке x0
Ответ: градиент равен
и функция f(x) будет выпуклой в .Задача 3 (16.136)
Минимизировать квадратичную функцию методом наискорейшего спуска, заканчивая вычисления при
, .Решение:
Тогда производные исходной функции будут иметь вид:
Выберем начальное приближение
. ТогдаДля нахождения точки минимума функции
найдем нули ее производной:Зная
, мы определим следующим образом:И так далее по выше описанной цепочке.
Реализуем решение данной задачи в математическом пакете Mathcad.
Функция имеет вид:
Тогда коэффициенты будут равны
Возьмем следующие начальное приближение
и :Далее пишем программу