Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
чм.doc
Скачиваний:
26
Добавлен:
09.02.2015
Размер:
2.48 Mб
Скачать

1. Метод средней точки (метод Больцано)

Метод средней точки является вариантом метода деления интервала пополам. Последовательные сокращения интервала неопределенности производятся на основе оценки производной минимизируемой функции в центре текущего интервала.

Начальный этап. Для запуска метода необходимо:

(1) задать [a1,b1] – начальный интервал локализации минимума, на границах которого знаки производных различны, т. е.f '(a1)f '(b1) < 0;– малое положительное число;

(2) установить счетчик числа итерацийk = 1.

Основной этап

Шаг 1. Взять пробную точкуxkв центре текущего интервала и проверить критерий окончания поиска: (1)xk= (ak+bk)/2; (2) еслиf '(xk)≤иLk = bk –ak ≤ , то остановиться (xk =х*– аппроксимирующий минимум).

Шаг 2. Сократить текущий интервал:

(1) eслиf '(xk) > 0, то положитьak + 1=akиbk + 1xk, в противном случае –ak + 1xk,bk + 1bk;

(2) заменитьkнаk + 1 и вернуться на шаг 1.

2. Метод трехточечного поиска на равных интервалах

В практических задачах вычисление производной на каждой итерации может оказаться затруднительным, а иногда и просто невозможным. Рассматриваемый метод позволяет сократить интервал локализации минимума на основе сравнения значений функции в пробных точках без вычисления производных.

Начальный этап.

(1) Задать [a1,b1] – начальный интервал поиска, гдеa1,b1– границы интервала, удовлетворяющие условиюf '(a1)f '(b1) < 0;– погрешность вычисления минимумаx*.

(2) Положитьxm= (a1+b1)/2 иk = 1.

Основной этап.

Шаг 1. Взять 2 пробные точкиx1=ak+Lk/4 иx2=bkLk/4, гдеLk=  =bk– ak– длина текущего интервала. Точкиx1,x2иxmделят [ak,bk] на 4 равные части.

Шаг 2. Сократить текущий интервал локализации минимума:

(1) еслиf1<fm, то положитьak + 1=ak,bk + 1=xm,xm=x1, перейти к шагу 3;

(2) еслиf1fm ≤f2, то положитьak + 1=x1,bk + 1=x2; иначе –ak + 1=xm,bk + 1=bk,xm=x2.

Шаг 3. Проверить критерий окончания поиска:

(1) заменитьkнаk+ 1;

(2) еслиLk=bkak ≤, то остановиться. Если данное условие не выполняется, вернуться к шагу 1.

3. Метод Ньютона

Метод Ньютона минимизации функции является обобщением известного метода Ньютона отыскания корня уравнения f '(x) = 0, гдеf(x) – скалярная функция скалярного аргументаx. Минимизацияf(x) основывается на использовании квадратичной аппроксимации функцииf(x) в точкеxk:f(x) =f(xk) +f '(xk)(xxk) + 0.5f ''(xk)(xxk)2.

В качестве приближения xk + 1к минимумуx*берется точка, в которой производнаяf '(x) = 0, т. е.f '(xk) +f ''(xk)(xk + 1 – xk) = 0.

Таким образом, xk + 1=xkf '(xk)/f ''(xk).

Итерационный процесс строит последовательность точек {xk}, которая при определенных условиях квадратично сходится к некоторой стационарной точкеx*функцииf(x), т. е. к точке, в которойf '(x*) = 0. Процесс останавливается, когдаxk + 1xk ≤иf '(xk) ≤, где> 0 – заранее заданное малое число.

Существенными недостатками метода Ньютона являются: 1) сложность задания начального приближенияx1в малой окрестности искомого минимумаx*; 2) необходимость вычисления вторых производных минимизируемой функции.