Файл: Сахарова Людмила Викторовна, Лукьянова Галина Викторовна Методы оптиизации для машинного обучения учебное пособие.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 06.12.2023

Просмотров: 943

Скачиваний: 18

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
* ) Из формул (2.14) и (2.18) следует приблизительно одинаковая эффективность обоих методов деления отрезка пополам. В табл. 2.5 представлены значения (N) для второго из них

2.2.3. МЕТОД ПАРАБОЛ

Поиск точки минимума методами исключения отрезков основан на сравнении значений функции в двух точках. При таком сравнении раз­ности значений (x) в этих точках не учитываются, важны только их знаки.Учесть информацию, содержащуюся в относительных изменениях значений(x) в пробных точках, позволяют методы полиномиальной ап­проксимации, основная идея которых состоит в том, что для функции (x) строится аппроксимирующий многочлен, и его точка минимума слу­жит приближением к х*. Для эффективного использования этих мето­дов на функцию (x), кроме унимодальности, налагается дополнительное требование достаточной гладкости (по крайней мере, непрерывности).Обоснованием указанных методов является известная из матема­тического анализа теорема Вейерштрасса об аппроксимации [4], согласно которой непрерывную на отрезке функцию можно с любой точностью приблизить на этом отрезке некоторым полиномом .Для повышения точности аппроксимации можно, во–первых, увеличивать порядок полинома и, во–вторых, уменьшать длину отрезка аппроксимации. Первый путь приводит к быстрому усложнению вы­числительных процедур, поэтому на практике используются аппрок­симирующие полиномы не выше треть­его порядка. В то же время уменьшить отрезок, содержащий точку минимума унимодальной функции, не представляет особого труда.В простейшем методе полиномиальной аппроксимации – методе парабол используются полиномы второго порядка. На каждой итерации этого метода строят квадратный трехчлен, график которого (парабола) проходит через три выбранные т очки графика функции (x) (рис. 2.8).Рис. 2.8. Опишем метод парабол. Рассмотрим унимодальную на отрезке [аb] функцию (x), достигающую минимума во внутренней точке этого отрезка. Выберем три точки х1, х2 и х
3 отрезка [аb], для которых выполняются неравенства:х1 < х2 < х3 , (x1)  (x2)  (x3). *(2.19)Из унимодальности (x) следует, что х*  [х1х3]. Построим квадратный трехчлен q(x) = а0 + a1(xx1) + a2(xx1)(xx2),график которого проходит через точки (x1,(x1)), (x2,(x2)) (x3,(x3)) графика функции (x). Будем считать, что если хотя бы одно из неравенств (2.19) для(xi) является строгим (если (x1)=(x2) =(x3), то поиск точки х* на этом закончен, так как из унимодальности функции (x) следует, что она достигает минимума в каждой точке отрезка [х1х3]). Тогда из (2.19) следует, что ветви искомой параболы направлены вверх, а точка минимума трехчлена q(x) принадлежит отрезку [х1х3].Определяя коэффициенты а0, a1 и a2 из системы уравнений:q(x1) = (x1) = 1 ;q(x2) = (x2) = 2 ;q(x3) = (x3) =3 ,где q(x) = а0 + a1(x–x1) + a2(x–x1)(x–x2).находим , , .Точку минимума квадратного трехчлена q(x) вычислим, приравняв его производную к нулю. Получим(2.20)Число из (2.20) служит очередным приближением метода парабол к х*. Далее описанная процедура повторяется для новых точек x1,x2,x3,удовлетворяющих неравенствам (2.19).Выбрать эти точки среди x1,x2

,x3, и можно с помощью перехода от исходного к новому отрезку [x1x3], содержащему точку х*, ме­тодом исключения отрезков. Для этого перехода используют проб­ные точки x2 и и сравнивают значения(x) в этих точках *). Начало и конец нового отрезка, а также пробная точка, попавшая на него, образуют тройку точек, обладающих свойством (2.19).

Заметим, что на каждой итерации метода парабол, кроме первой, определяется только одно новое значение(x).

Условием окончания поиска служит близость к нулю разности  чисел , найденных на данной и предыдущей итерациях, т.е. неравенство ||  , где – заданное число, характеризующее точность определения х*.

Перечислим основные шаги алгоритма метода парабол.

Шаг 1. Выбрать точки x1,x2,x3, удовлетворяющие условиям (2.19). Перейти к шагу 2.

Шаг 2. Найти по формуле (2.20). На первой итерации перейти к шагу 4, на остальных – к шагу 3.

Шаг 3. Проверка на окончание поиска. Сравнить модуль разно­сти значений на данной и предыдущей итерациях  с числом . Если ||  , то поиск завершить, полагая х*  , *  (x), иначе – перейти к шагу 4.

Шаг 4. Вычислить значение ( ). Перейти к шагу 5.

Шаг 5. Определить новую тройку чисел x1,x2,x3. Присвоить (x1), (x2) и(x3) соответствующие значения(x) найденные ранее. Пе­рейти к шагу 2.
Пример 2.8. Метод парабол.

Решить задачу(x) 4 + еx min, х [0; 1] с точностью ||   = 0,0025.
Итерация 1.


Шаг 1. Выберем точки х1 = 0,25, х2 = 0,5, х3, = 0,75. Функция принимает в этих точках значения, соответственно 1 = 0,7827, 2 = 0,6690, 3 = 0,7888, удовлетворяющие неравенствам (2.19). Переходим к шагу 2.Шаг 2. По формуле (2.20) находим: = 0,4968. Переходим к шагу 4.Шаг 4. Вычисляем( ) = 0,6694. Переходим к шагу 5.Шаг 5. На данной итерации имеем: x1 < <x2 <x3, ( ) > (x2), сле­довательно, x*[ ; x3]. Поэтому полагаем: x1 = =0,4968, (x1) =( ) = 0,6694, а точки х2 , x3 и значения(x) в них не изменяются. Переходим к сле­дующей итерации, начиная с шага 2. Итерация 2 .Шаг 2. Находим = 0.5224. Переходим к шагу 3.Шаг 3.  =0.4968–0,5224= 0,026 > 0,0025, поэтому переходим к шагу 4.Шаг 4. Вычисляем( ) =0,6676. Переходим к шагу 5.Шаг 5. На этой итерации x1 <x2 < <x3, (x2) > ( ), поэтому x*[x2x3] и полагаем x1 =x2 = 0,5, (x1) =(x2) = 0,6690, x2 = = 0,5524, (x2) = ( ) = 0,6676, а точка x3 и значение (x3) остаются прежними. Пере­ходим к следующей итерации.Итерация 3.Ш а г 2. Находим

= 0,5248. Переходим к шагу 3.

Ш а г 3. Определяем  =0,5224–0,5248=0,0024 < 0,0025, т.е. требуемая точность достигнута. Поэтому полагаем х* = = 0,525.

Отметим, что в результате пяти вычислений (x) точка х* была найдена с весьма высокой точностью (сравните с точным до четвертого знака значе­нием х*= 0,5283 )