|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Метод Флетчера-РивсаКак было показано в предыдущем разделе, задачу минимизации квадратичной функции N переменных можно решить не более чем за N одномерных поисков, если проводить их вдоль направлений, сопряженных относительно матрицы A. Собственно говоря, минимум квадратичной функции независимо от числа переменных можно найти еще быстрее — за один шаг, решив систему линейных уравнений (16). Метод сопряженных направлений более интересен с точки зрения его применения для минимизации функций общего вида. Пусть F(x) – произвольная функция N переменных, а x*– точка ее минимума (возможно, локального). Предполагая, что F(x) по меньшей мере дважды непрерывно дифференцируема, приближенно представим ее в окрестности x*с помощью формулы Тейлора: (29) где H – матрица вторых производных (матрица Гессе), вычисленная в точке x*(определение H см. в разделе 2.3.2). Выражение (29) не содержит первых производных функции F(x), поскольку в точке минимума x*они равны нулю. Сравнивая (29) с (14), видим, что в достаточной близости от минимума (когда вклад третьей и более высоких степеней расстояния x-x*мал) любая функция может приближенно рассматриваться как квадратичная, причем матрице A из представления (14) соответствует матрица Гессе H. Необходимым условием минимума является положительная определенность матрицы Гессе в точке x*. Два первых слагаемых во второй строке (29) соответствуют скалярной константе c в (16). Третий член в (29) содержит слагаемые, линейные относительно x, причем вектору коэффициентов b из (16) соответствует произведение Hx*. Поскольку метод сопряженных направлений находит минимум квадратичной функции за конечное число шагов, можно надеяться, что в общем случае он позволит быстро достичь конечного результата после того, как текущая точка приблизилась к минимуму, и формула (29) стала удовлетворительно аппроксимировать поведение F(x). Однако, вариант метода, рассмотренный в предыдущем разделе, вряд ли может быть полезным, поскольку в расчетные формулы входит матрица A, а следовательно, придется вычислять вторые производные. К тому же приближение (29) предполагает, что матрица H рассчитывается в точке минимума x*, которая первоначально неизвестна. Оказывается, сопряженные направления можно построить, не зная матрицы A. Соответствующий алгоритм был предложен Флетчером и Ривсом (R. Fletcher, C. M. Reeves; 1964). Во-первых, необходимо отказаться от вычисления коэффициентов ak по явным формулам (19), (24), (28) и т. д., а точку минимума вдоль заданного направления находить с помощью непосредственной одномерной оптимизации, применяя методы, описанные в разделе 1 (см. также п. 2.1.2). Во-вторых, выражения для коэффициентов bk можно преобразовать следующим образом. Пусть на k-м шаге алгоритма проводился поиск минимума от точки xk вдоль направления pk=gk+bk-1pk-1, причем в результате получена точка минимума xk+1. На следующем шаге для поиска берется направление pk+1=gk+1+bkpk. Направления pk и pk+1 сопряжены, т. е. (gk+1+bkpk)¢Apk=0. (30) Точки xk и xk+1 лежат на прямой, параллельной pk, так что в уравнении (30) вектор pk (с точностью до коэффициента -ak) можно заменить разностью xk+1-xk: (gk+1+bkpk)¢A(xk+1-xk)=0. Далее, так как, согласно (15), gk=Axk+b и gk+1=Axk+1+b, то gk+1-gk=Axk+1-Axk. Подставляя это соотношение в предыдущее уравнение, имеем: (gk+1+bkpk)¢(gk+1-gk)=0. (31) Учитывая, что направление поиска и градиент в найденной точке минимума взаимно ортогональны, т. е. p¢k-1gk=0 и pk¢gk+1=0, то из (31) окончательно получаем: . (32) Таким образом, для построения сопряженных направлений поиска достаточно уметь вычислять только градиент минимизируемой функции. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |