Файл: Сахарова Людмила Викторовна, Лукьянова Галина Викторовна Методы оптиизации для машинного обучения учебное пособие.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 06.12.2023
Просмотров: 943
Скачиваний: 18
СОДЕРЖАНИЕ
МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ В ОПТИМИЗАЦИИ
1.1. ОПРЕДЕЛЕНИЕ ГРАНИЦ ОБЪЕКТА ОПТИМИЗАЦИИ
1.3. ОПРЕДЕЛЕНИЕ ОГРАНИЧЕНИЙ НА УПРАВЛЯЕМЫЕ ПЕРЕМЕННЫЕ
1.4. ВЫБОР ЧИСЛОВОГО КРИТЕРИЯ ОПТИМИЗАЦИИ
1.5. ФОРМУЛИРОВКА МАТЕМАТИЧЕСКОЙ ЗАДАЧИ ОПТИМИЗАЦИИ
ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧ ОДНОМЕРНОЙ ОПТИМИЗАЦИИ
МЕТОДЫ БЕЗУСЛОВНОЙ МИНИМИЗАЦИИ ФУНКЦИЙ МНОГИХ ПЕРЕМЕННЫХ
3.2. ВЫПУКЛЫЕ МНОЖЕСТВА И ВЫПУКЛЫЕ ФУНКЦИИ
3.3. ОБЩИЕ ПРИНЦИПЫ n–МЕРНОЙ МИНИМИЗАЦИИ
3.5. МЕТОДЫ БЕЗУСЛОВНОЙ МИНИМИЗАЦИИ, ИСПОЛЬЗУЮЩИЕ ПРОИЗВОДНЫЕ ФУНКЦИИ
2.2.3. МЕТОД ПАРАБОЛ
Поиск точки минимума методами исключения отрезков основан на сравнении значений функции в двух точках. При таком сравнении разности значений f (x) в этих точках не учитываются, важны только их знаки.Учесть информацию, содержащуюся в относительных изменениях значенийf (x) в пробных точках, позволяют методы полиномиальной аппроксимации, основная идея которых состоит в том, что для функции f (x) строится аппроксимирующий многочлен, и его точка минимума служит приближением к х*. Для эффективного использования этих методов на функцию f (x), кроме унимодальности, налагается дополнительное требование достаточной гладкости (по крайней мере, непрерывности).Обоснованием указанных методов является известная из математического анализа теорема Вейерштрасса об аппроксимации [4], согласно которой непрерывную на отрезке функцию можно с любой точностью приблизить на этом отрезке некоторым полиномом .Для повышения точности аппроксимации можно, во–первых, увеличивать порядок полинома и, во–вторых, уменьшать длину отрезка аппроксимации. Первый путь приводит к быстрому усложнению вычислительных процедур, поэтому на практике используются аппроксимирующие полиномы не выше третьего порядка. В то же время уменьшить отрезок, содержащий точку минимума унимодальной функции, не представляет особого труда.В простейшем методе полиномиальной аппроксимации – методе парабол используются полиномы второго порядка. На каждой итерации этого метода строят квадратный трехчлен, график которого (парабола) проходит через три выбранные т очки графика функции f (x) (рис. 2.8).Рис. 2.8. Опишем метод парабол. Рассмотрим унимодальную на отрезке [а; b] функцию f (x), достигающую минимума во внутренней точке этого отрезка. Выберем три точки х1, х2 и х3 отрезка [а; b], для которых выполняются неравенства:х1 < х2 < х3 , f (x1) f (x2) f (x3). *(2.19)Из унимодальности f (x) следует, что х* [х1; х3]. Построим квадратный трехчлен q(x) = а0 + a1(x–x1) + a2(x–x1)(x–x2),график которого проходит через точки (x1,f (x1)), (x2,f (x2)) (x3,f (x3)) графика функции f (x). Будем считать, что если хотя бы одно из неравенств (2.19) дляf (xi) является строгим (если f (x1)=f (x2) =f (x3), то поиск точки х* на этом закончен, так как из унимодальности функции f (x) следует, что она достигает минимума в каждой точке отрезка [х1; х3]). Тогда из (2.19) следует, что ветви искомой параболы направлены вверх, а точка минимума
,x3, и
можно с помощью перехода от исходного к новому отрезку [x1; x3], содержащему точку х*, методом исключения отрезков. Для этого перехода используют пробные точки x2 и
и сравнивают значенияf (x) в этих точках *). Начало и конец нового отрезка, а также пробная точка, попавшая на него, образуют тройку точек, обладающих свойством (2.19).
Заметим, что на каждой итерации метода парабол, кроме первой, определяется только одно новое значениеf (x).
Условием окончания поиска служит близость к нулю разности чисел
, найденных на данной и предыдущей итерациях, т.е. неравенство || , где – заданное число, характеризующее точность определения х*.
Перечислим основные шаги алгоритма метода парабол.
Шаг 1. Выбрать точки x1,x2,x3, удовлетворяющие условиям (2.19). Перейти к шагу 2.
Шаг 2. Найти
по формуле (2.20). На первой итерации перейти к шагу 4, на остальных – к шагу 3.
Шаг 3. Проверка на окончание поиска. Сравнить модуль разности значений
на данной и предыдущей итерациях с числом . Если || , то поиск завершить, полагая х*
, f * f (x), иначе – перейти к шагу 4.
Шаг 4. Вычислить значение f (
). Перейти к шагу 5.
Шаг 5. Определить новую тройку чисел x1,x2,x3. Присвоить f (x1), f (x2) иf (x3) соответствующие значенияf (x) найденные ранее. Перейти к шагу 2.
Пример 2.8. Метод парабол.
Решить задачуf (x) =х4 + е–x min, х [0; 1] с точностью || = 0,0025.
Итерация 1.
Шаг 1. Выберем точки х1 = 0,25, х2 = 0,5, х3, = 0,75. Функция принимает в этих точках значения, соответственно f 1 = 0,7827, f 2 = 0,6690, f 3 = 0,7888, удовлетворяющие неравенствам (2.19). Переходим к шагу 2.Шаг 2. По формуле (2.20) находим: = 0,4968. Переходим к шагу 4.Шаг 4. Вычисляемf ( ) = 0,6694. Переходим к шагу 5.Шаг 5. На данной итерации имеем: x1 < <x2 <x3, f ( ) > f (x2), следовательно, x*[ ; x3]. Поэтому полагаем: x1 = =0,4968, f (x1) =f ( ) = 0,6694, а точки х2 , x3 и значенияf (x) в них не изменяются. Переходим к следующей итерации, начиная с шага 2. Итерация 2 .Шаг 2. Находим = 0.5224. Переходим к шагу 3.Шаг 3. =0.4968–0,5224= 0,026 > 0,0025, поэтому переходим к шагу 4.Шаг 4. Вычисляемf ( ) =0,6676. Переходим к шагу 5.Шаг 5. На этой итерации x1 <x2 < <x3, f (x2) > f ( ), поэтому x*[x2; x3] и полагаем x1 =x2 = 0,5, f (x1) =f (x2) = 0,6690, x2 = = 0,5524, f (x2) = f ( ) = 0,6676, а точка x3 и значение f (x3) остаются прежними. Переходим к следующей итерации.Итерация 3.Ш а г 2. Находим
= 0,5248. Переходим к шагу 3.
Ш а г 3. Определяем =0,5224–0,5248=0,0024 < 0,0025, т.е. требуемая точность достигнута. Поэтому полагаем х* =
= 0,525.
Отметим, что в результате пяти вычислений f (x) точка х* была найдена с весьма высокой точностью (сравните с точным до четвертого знака значением х*= 0,5283 )