Математические модели оптимизации показателей качества, страница 3

Метод парабол. В методе парабол, кроме сравнения значений в двух точках, как это имеет место в методе исключения отрезков, используется информация, содержащаяся в относительных изменениях значений f(x) в пробных точках. Метод парабол является простейшим из методов полиномиальной аппроксимации, которые основаны на том, что функция f(x) апроксимируется многочленом. Точка минимума этого многочлена является приближенным значением точки x* минимума функции f(x). При этом на функцию f(x) накладываются ограничения унимодальности и гладкости. На каждой итерации метода парабол строится квадратный трехчлен, график которого представляет параболу и проходит через три выбранные точки графика функции f(x).

Пусть функция f(x) является унимодальной на отрезке [a,b] и достигает минимума во внутренней точке отрезка. На отрезке [a,b] выбираем три точки x1, x2, x3, для которых выполняются неравенства:

                           x1<x2<x3; f(x1) ≥ f(x2) ≤ f(x3)                          (2.10)

Т.к. функция унимодальна, то x*є[x1,x3].

Рассмотрим квадратный трехчлен в виде q(x)=a0+a1(x-x1)+a2(x-x1)(x-x2). его график проходит через точки (x1,f(x1)); (x2,f(x2)); (x3,f(x3))графика функции f(x). из (2.10) следует, что ветви искомой параболы направлены вверх, а точки минимума принадлежат отрезку [x1,x3].

Коэффициенты a0,a1,a2 можно найти из системы уравнений:

     q(x1)=f1(x1); q(x2)=f2(x2); q(x3)=f3(x3)

Решая систему найдем:

  a0=f1; a1 = (f2 – f1) ( x2-x1)-1; a2 = ( x3 –x2)-1 [(f3 -f1) (x3 -x1 )-1 – (f2-f1) (x2-x1)-1]

Точка минимума квадратного x трехчлена q(x) можно найти из условия равенства нулю производной q(x): x =1/2(x1+x2-a1/a2),

  Число x является очередным приближением к точке минимума функции x*.

 Затем данная процедура выполняется для новых точек x1, x2, x3, которые удовлетворяют неравенствам (2.10). Причем выбрать эти точки можно используя метод исключения отрезков при переходе от исходного отрезка к новому [x1,x3] содержащему точку x*. В качестве пробных точек используются точки x2 и x, в которых сравниваются значения функции f(x). В этом случаи начало и конец нового отрезка, и пробная точка образуют тройку чисел, удовлетворяющую (2.10). На каждой итерации необходимо одно новое значение функции f(x).

Условием окончания является условие:

                                                  │∆│≤ ε,

где ε - заданная точность определения точки x*, ∆ - разность чисел x, найденных на данной и предыдущей итерациях. Точность метода парабол выше чем точность метода исключения отрезков, при одном и том же количестве вычислений.

Методы, использующие производные функции. Прямые методы используются при минимальных требованиях к функции, когда необходимо выполнение требования унимодальности, а вычисление производных не выполняется. Эффективность методов возрастает, если к функции предъявить требования дважды дифференцируемости и выпуклости, и вычислять производные в пробных точках.

Метод средней точки – заключается в том, что в средней точке xc=(a+b)/2 отрезка вычисляется значение производной f( xc).

Если f(x)>0, то точка xc лежит на участке монотонного возрастания функции  f(x) и, следовательно, x*< xc , а точка минимума находится на отрезке [a, x]. Если же f( xc) < 0, то точка xc лежит на участке убывания функции f(x) и x*є[x, b]. При   f( xc)=0 точка минимума x*= xc.

В случае метода средней точки на каждой итерации вычисляется только одно значение f(x). Отрезок поиска при этом уменьшается вдвое. Если │f(x)│< ε на очередной итерации, то поиск заканчивается и следует положить x* ≈ xc и f* ≈ f(xc).

Метод хорд. Для выпуклой дифференцируемой функции f(x), если производная на концах отрезков [a,b] имеет разные значки (f(a) f(b)<0) задача нахождения минимума f(x) эквивалентна решению уравнения.

                                            f(x)=0, xє(a,b).

Метод хорд основан на исключении отрезков путем определения точки x^ пересечения  хорды графика функции f(x) с осью 0x. на очередном отрезке

               x^= a - f(a) (a – b)/ [f(a) - f (b)]                           (2.11)

Отрезок дальнейшего поиска точки x*([a,x^] или (x^,b]) выбирается в

 


                        f(x)

 


Рис. 2.3. Исключение отрезков в методе хорд.

 зависимости от знака также как в методе средней точки. На каждой итерации кроме первой следует вычислять одно новое значение f(x). Поиск заканчивается при выполнении условия │ f(x^)< ε, полагая x*≈ xc, f*≈f(xc).

  Метод Ньютона (метод касательных) заключается в том, что для дважды дифференцируемой, выпуклой (f(x)>0) функции корень уравнения   f(x)=0 находится методом касательных. Метод состоит в построении последовательных приближений xk, k=0,1…, на основе применения аппроксимирующей функции в виде касательной к графику функции f(x). Точка, в которой линейная аппроксимирующая функция обращается в ноль, используется в качестве следующего приближения xk+1. Уравнение касательной к графику функции f(x) имеет вид:    y= f(xk)+ f′′(xk) (x-xk)

Из условия найдем y=0 точку xk+1:

xk+1=xk - f(xk)/ f′′(xk

Выбирая в качестве начального приближения точку x0 получим при k=0,1… последовательность точек xk. Вычисления проводят до тех пор, пока не выполниться условие │ f(xk)│≤ ε. Затем полагают x*≈xk, f*≈f(xk). При x0 достаточно близком к x* метод обеспечивает высокую скорость сходимости.

   Метод кубической аппроксимации. В этом методе функция аппроксимируется многочленом третей степени. Считая, что f(x) является выпуклой дифференцируемой функцией, которая в интервале (x1,x2) содержит точку минимума x*, аппроксимирующий полином представим в виде:

                 q(x)=a0=a1(x-x1)+a2(x-x1)(x-x2)+a3(x-x1)2(x-x2),

где x1 и x2 точки, в которых совпадают значения функции f(x) и значения q(x), а также значения их производных. Из условия q(x1)=f(x1); q(x2)=f(x2); q(x1)=f(x1); q(x2)= f(x2) получаем систему алгебраических уравнений для определения коэффициента: a0=f(x1); a0+a1(x2-x1)=f(x2); a1+a2(x-x2)= f(x1); a1+a2(x2-x1)+a3(x2-x1)= f(x2).

Из условия f(x)=0 получим квадратное уравнение для определения значения x0, принадлежащего интервалу (x1,x2). Этот корень является точкой минимума полинома q(x) и является приближением к точке минимума функции f(x). В качестве новой пары точек x1, x2 для следующей итерации выбираются концы одного из отрезков [a, x0] и [x0,b], которые содержат точку x*. Выбор того или иного отрезка осуществляется в зависимости от знака производной f(x0), как в методе средней точки. Поиск заканчивается при выполнении неравенства │f(x0)│≤ 0. При этом полагают, что x* ≈ x0, f* ≈ f(x0).