![](/user_photo/_userpic.png)
lab_5 / lab5_25
.docxМИНЦИФРЫ РФ
Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования
«Московский Технический Университет Связи и Информатики»
Кафедра информатики
ЛАБОРАТОРНАЯ РАБОТА №5
«Одномерная оптимизация»
Выполнил студент группы “Сортирный Союз”
username
Москва 2021
Индивидуальное задание
№ |
Целевая функция |
25 |
|
Нечётный номер варианта (№25): метод золотого сечения реализуется в программе на C++; метод дихотомии реализуется в сценарии Scilab.
График
функции
,
построенный на достаточно большом
отрезке ОДЗ:
По
построенному графику функции выберем
начальный отрезок неопределённости
(отрезок, содержащий точку минимума):
Проверим выполнение аналитического условия унимодальности функции на выбранном отрезке:
Сведём
значения
в одну таблицу:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
На
отрезке
функция
монотонно возрастает - следовательно,
на данном отрезке функция
унимодальна.
Схемы алгоритмов для дальнейших расчётов приведены в разделе 2.6 пособия по алгоритмам.
Метод золотого сечения (C++)
Количество
необходимых итераций можно рассчитать
по следующей формуле:
.
Необходимая точность достигнута при
.
Результат
выполнения программы:
Метод дихотомии
Значение
параметра
метода дихотомии выберем равным
.
Для проведения расчётов по методу
дихотомии создадим следующий сценарий
и проведём расчёты для 3-х итераций:
Для
метода дихотомии длина отрезка
неопределённости после трёх итераций
равна
,
что совпадает с полученной длиной
отрезка неопределённости (
.
Решение задачи оптимизации средствами пакета Scilab
Сценарий
для построения графика функции:
Сценарий
для решения задачи оптимизации с помощью
функции optim():
Результат
выполнения сценариев:
Вывод: результаты решения задачи оптимизации разными методами (метод золотого сечения, метод дихотомии, функция Scilab optim()) сошлись друг с другом в пределах допустимой погрешности.