Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Малинин / МУЛР.doc
Скачиваний:
55
Добавлен:
15.04.2015
Размер:
2.22 Mб
Скачать

1.1. Сокращение интервала неопределенности методом золотого сечения

Название метода указывает на его связь с золотым делением отрезка, т.е. таким делением отрезка на две неравные части XиY(X>Y), при котором, где.

Для нахождения минимума функции необходимо прежде всего определить интервал неопределенности, т.е. отрезок на прямой, внутрь которого попадает точка Xmс минимальным значением функцииФ(Xm). Для ускорения поиска на этапе выделения интервала неопределенности необходимо ввести переменный шаг в (4):

;α-1 = 0; α0 = 1, (8)

если при этом происходит убывание функции.

На рис. 1 изображена последовательность точек α0, α1, α2 , полученная согласно алгоритму (8).

Рис. 1. Последовательность точек α

Из рис.1 видно, что интервал неопределенности лежит между точками α0иα2. Выберем новую точкуα3так, чтобы получить золотое сечение интервала неопределенности(рис. 2).

Рис. 2. Сокращение интервала неопределенности

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

, (9)

где - два последних значения значений функции,- коэффициент, задающий точность одномерного поиска.

1.2. Сокращение интервала неопределенности методом квадратичной аппроксимации

В основе метода лежит аппроксимация функции Ф() квадратичным полиномом. Для ускорения поиска на этапе выделения интервала неопределенности необходимо ввести, как и ранее, переменный шагiв (4):

; (10)

0 = 1, если при этом происходит убывание функции,-1 = 0,- коэффициент, численное значение которого в начале одномерного поиска равно нулю, а затем возрастает на 1 через каждыеRшагов. Пусть произведены измерения функции в точках0, 1, 2согласно алгоритму . Интервал неопределенности лежит между точками0и2(рис. 1). Для сокращения интервала заменяем реальную функциюФ()аппроксимирующей функциейФапр(), которая проходит через те же точки0, 1, 2,Фапр()=a2+b+c и имеет координату минимумаопт= – b/(2a).Связывая неизвестные коэффициентыa, b, cсо значениями0, 1, 2иФ(0), Ф(1), Ф(2) получаем расчетную формулу:

. (11)

Причем точка 3=опт(рис. 2) попадает внутрь интервала неопределенности2 - 0.

Новый интервал неопределенности уменьшился и стал равным 2 - 1. Вычислительный процесс сокращения интервала необходимо продолжить, пока не будет выполнено условие одномерного поиска (9).

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

,

где H– симметричная и положительно определенная матрица вторых частных и смешанных производных (матрица Гессе, или гессиан),с– постоянный вектор, b– константа.

Оптимальное решение приведенной задачи соответствует нулевым значениям первых производных, то есть

, откуда.

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

Среди подобных алгоритмов одним из наиболее популярных и используемых в пакете OptimizationToolboxявляется так называемыйBFGS-алгоритм, получивший свое название по фамилиям предложивших его авторов (Broyden,Fletcher,Goldfarb,Shanoo), в котором аппроксимацияНпроизводится итерационно, по формуле

, где,.

Заметим, что наиболее удобно иметь аппроксимацию не матрицы Н, а обратной к ней матрицы Н-1, приведенное рекуррентное соотношение подобную замену допускает, при этом сам алгоритм становится практически идентичным хорошо известному отечественным исследователям алгоритму Давидона-Флетчера-Пауэлла, за тем исключением, что в последнем векторы q заменены на векторы s и наоборот.

Именно такие алгоритмы являются основой численных методов, заложенных в распространенные математические пакеты прикладных программ (MS Excel, Mathcad, Mathlab).

Блок-схема алгоритма минимизации функции многих переменных метода Давидона-Флетчера-Пауэлла приведена на рис. 3.

Ξ

Ξ

Ξ

Ξ

Ξ

Ξ

Ξ

Ξ

Рис. 3. Блок-схема алгоритма минимизации функции

Соседние файлы в папке Малинин