Цель работы:
Изучение численных методов поиска экстремума функции одной переменной с использованием инструментария электронных таблиц MS Excel.
Формальная постановка задачи:
Дано: функция f(x), заданная аналитически (формулой);
интервал [a ; b]; точность e=0,0001
Найти: x* такой, что f(x*)=min[a ; b] (f(x))
На заданном интервале функция может иметь несколько экстремумов (минимумов или максимумов), поэтому вначале необходимо найти такие интервалы, на которых функция имеет ровно один экстремум – интервалы унимодальности. Нахождение интервалов унимодальности выполняется табулированием функции и графически.
Задание:
1) Найти интервалы унимодальности заданной функции на интервале [-1 ; 3] с точностью 0,2.
2) Минимизировать заданную функцию с точностью e=0,0001 методом дихотомии.
3) Используя окно диалога "Поиск решения", уточнить координаты всех экстремумов (минимумов и максимумов) заданной функции на заданном интервале.
Этапы выполнения работы:
1) Создать электронную таблицу для поиска экстремумов функции одной переменной. В первой строке таблицы расположить название работы. Во вторую строку ввести функцию в соответствии с номером варианта. Обе строки текста выделить жирным шрифтом.
2) Поиск интервалов унимодальности.
Для поиска интервалов унимодальности функции необходимо построить таблицу значений заданной функции на заданном отрезке [x(нач); x(кон)]. В третью строку ввести название таблицы – «Поиск интервалов унимодальности». Названия столбцов x и f(x) выделить жирным шрифтом.
Рассчитать значения аргумента x от -1 до 3 с шагом 0,1, используя формулу. Выбрать наибольшее значение функции (без учета значений на границах интервала), выделить его цветом. Выделить рамкой соседние значения. Аналогично выбрать наименьшее значение функции (без учета значений на границах интервала), выделить его цветом, обвести рамкой соседние значения. Под таблицей значений функции выписать результаты поиска интервалов унимодальности.
Построить график функции (точечную диаграмму) на заданном отрезке. Диаграмму расположить справа от таблицы значений функции. Название диаграммы должно содержать исследуемую функцию.
3) Построить таблицу для уточнения заданного экстремума функции.
Во 2-й строке в ячейку E2 ввести подпись “e=”, в ячейку F2 – значение точности вычислений 0,0001. В 3- й строке справа от таблицы значений функции, начиная со столбца D, ввести названия столбцов таблицы жирным шрифтом.
В ячейку D4 ввести 1, в ячейки E4 и F4 – ссылки на границы интервала унимодальности для минимума. Далее в 4-й строке рассчитать значения в соответствии с формулами в таблице.
В 5-й строке для определения новых границ интервала (ячейки E5 и F5) использовать логическую функцию ЕСЛИ:
а = { x1, если f(x1)>f(x2) ; а, если f(x1)<f(x2)
b = { b, если f(x1)>f(x2) ; x2, если f(x1)<f(x2)
Выбрать строку, в которой в столбце М (с заголовком “?”) в первый раз «нет» сменяется на «да», удалить все последующие строки. Выделить светло-желтым фоном ячейки, содержащие значение минимума, значение функции в точке минимума, погрешность решения и количество итераций.
4) Уточнить экстремумы при помощи подпрограммы "Поиск решения"
Ниже таблицы для поиска минимума методом дихотомии ввести текст – «Уточнение экстремумов "Поиском решения"». Скопировать из таблицы значений функции заголовки столбцов и первую строку с формулами.
Задать начальные приближения, используя одну из границ интервала унимодальности:
Последовательно уточнить значения максимума и минимума, используя окно диалога «Поиск решения».
Необходимо убедиться, что полученные в результате «Поиска решения» значения экстремумов принадлежат интервалам унимодальности функции.