Минимизации функции одной переменной
Автор: withoutname2 • Декабрь 18, 2019 • Контрольная работа • 1,029 Слов (5 Страниц) • 447 Просмотры
1 Исходные данные
1. Проверить выпуклость функции f(x) на отрезке [a, b]
2. Найти точку минимума с указанной точностью ε (при этом точность по функции и по аргументу полагается равной, ). Сопроводить решение графической интерпретацией. [pic 1]
3. Решить задачу методом Фибоначчи с точностью ε = 0,05. Исходные данные представлены на рисунке 1.1.
4. Оценить трудоемкость метода.
[pic 2]
Рисунок 1.1 – Исходные данные
2 Выполнение работы
Первым шагом проверим выпуклость функции на отрезке [a,b]. Для этого найдем вторую производную от функции :[pic 3]
[pic 4]
Приравняем полученное выражение к нулю и найдем корни уравнения:
[pic 5]
[pic 6]
Построим график функции (рисунок 2.1)
[pic 7]
Рисунок 2.1 – График функции
Согласно графику, функция выпукла на интервале (10; +∞).
Найдем необходимое число вычислений функции. Воспользуемся формулой:
[pic 8]
Найдем последовательность чисел Фибоначчи. Для этого вызовем функцию fibo (приложение A) и получим следующий результат (рисунок 2.1).
[pic 9]
Рисунок 2.1 – Числа Фибоначчи
Для полученного числа «N» выполняется следующее неравенство:
Fibo(6) < N < Fibo(7), т.е 13 < 18 < 21
Следовательно, количество вычислений равно 7.
Найдем длину конечного интервала неопределенности:
[pic 10]
Следующим шагом вызовем функцию «iteration» (приложение A).
Для этого в командном окне пропишем следующее: iteration(a,b,eps,f), где a и b – значения интервала, eps – заданная точность, f – порядковый номер числа Фибоначчи.
Введем: iteration(0.1, 1, 0.05, 7) и получим следующие вычисленные значения (рисунок 2.2).
[pic 11]
Рисунок 2.2 – Полученные значения первой и второй итераций
Исходя из рисунка 2.2, были получены значения первой и второй итерации, «iter» и «iter_next» соответственно. Затем, чтобы получить значения 3-й итерации, необходимо в функцию «iteration» подставить полученные во второй итерации значения «a» и «b», а также уменьшить порядковый номер «f» на единицу.
Введем: iteration(0.1, 0.65714, 0.05, 6) и таким образом получим значения 3-й итерации (рисунок 2.3).
[pic 12]
Рисунок 2.3 – Полученные значения 3-й итерации
Для наглядности составим таблицу с полученными значениями на каждой итерации.
Таблица 2.1
Шаг | a | b | b-a | x1 | x2 | f(x1) | f(x2) |
1 | 0.1 | 1 | 0.9 | 0.44286 | 0.65714 | -3.7052 | -2.975 |
2 | 0.1 | 0.65714 | 0.55714 | 0.31429 | 0.44286 | -3.6871 | -3.7052 |
3 | 0.31428 | 0.65714 | 0.34286 | 0.44286 | 0.52857 | -3.7052 | -3.5098 |
4 | 0.31428 | 0.52857 | 0.21429 | 0.39999 | 0.44285 | -3.7452 | -3.7052 |
5 | 0.31428 | 0.44285 | 0.12857 | 0.35714 | 0.4 | -3.741 | -3.7452 |
6 | 0.35714 | 0.44285 | 0.085713 | 0.39999 | 0.39999 | -3.7452 | -3.7452 |
7 | 0.39999 | 0.44285 | 0.042855 | 0.39999 | 0.44285 | -3.7452 | -3.7052 |
Конечный интервал неопределенности на шаге №7 равен [0.39999; 0.44285], его длина составляет 0.042855 и совпадает с выше-рассчитанным значением «».[pic 13]
...