
- •Глава 1. Методы оптимизации в электронике свч
- •1.1 Классификация методов оптимизации
- •1.2 Методы одномерного поиска
- •1.2.1 Методы исключения интервалов
- •1.2.2 Методы полиномиальной аппроксимации
- •1.2.3 Методы с использованием производных
- •1.3 Методы оптимизации 0-го порядка
- •1.3.1 Метод покоординатного поиска
- •1.3.2 Метод Розенброка
- •1.3.3 Метод дск
- •1.3.4 Метод Пауэлла
- •1.3.5 Симплексный метод
- •1.4 Методы оптимизации 2-го порядка
- •1.4.1 Метод Ньютона
- •1.4.2 Метод Ньютона-Рафсона
- •1.5 Методы оптимизации 1-го порядка
- •1.5.1 Метод наискорейшего спуска
- •1.5.2 Метод Вольфа
- •1.5.3 Методы с переменной метрикой
- •1.6 Методы условной оптимизации
- •1.6.1 Метод множителей Лагранжа
- •1.6.2 Метод штрафных функций
- •1.6.3 Комбинированный метод Хестенса
- •1.6.4 Метод разделения параметров
- •1.7 Проблема глобальной оптимизации
- •1.8 Расчет производных
- •1.8.1 Конечно-разностный метод
- •1.9 Рекомендации по использованию методов оптимизации в задачах электроники свч и краткие выводы
1.4 Методы оптимизации 2-го порядка
1.4.1 Метод Ньютона
Пусть в текущей точке Xk матрица
Гессе
положительно определена. Тогда направление
спуска Pk можно определить из
условия минимума квадратичной функции
специального вида. Разложим целевую
функцию J(X) в ряд Тейлора относительно
текущей точки Xk:
(1.4.1)
где
Функция Q(Xk ) есть квадратичная аппроксимация J(X) вблизи точки Xk. Аналогично разложим в ряд Тейлора функцию J(X) относительно точки Xk+1:
(1.4.2)
Для функции J(X) близкой к квадратичной,
когда O(|k|3)
близка к нулю, матрица Гессе G является
матрицей констант и не зависит от
значения X. Если предположить, что
в точке Xk+1 находится минимум
целевой функции J(X), то
и сложив (1.4.1) и (1.4.2) и отбросив члены
третьего и более высокого порядка
малости (O(|k|3)~0
) получим формулу Ньютона:
(1.4.3)
Достоинством метода Ньютона является отсутствие процедуры поиска минимума в заданном направлении и достижение для квадратичной функции точного решения за одну итерацию. Недостатками метода являются большие затраты на расчет матрицы вторых производных от целевой функции по поисковым параметрам и не гарантируемая сходимость к решению для не квадратичных целевых функций.
1.4.2 Метод Ньютона-Рафсона
Для повышения устойчивости работы метода Ньютона на не квадратичных функциях метод Ньютона был усовершенствован Рафсоном путем введения процедуры поиска минимума целевой функции в заданном направлении. Поисковое направление определяется по формуле:
(1.4.4)
Алгоритм метода Ньютона-Рафсона следующий.
{{{ Начало алгоритма.
1) Полагаем k=1 и Xk=Xinit.
2) Рассчитываем в точке Xk
значения J(Xk),
и G.
Вычисляем направление поиска по формуле (1.4.4) и находим минимум в этом направлении из условия:
k: min(J(Xk+kPk ). (1.4.5)
Рассчитываем новое приближение вектора поисковых параметров
Xk+1=Xk+kPk.
3) Если |kPk|> , то увеличиваем k на единицу k=k+1 и переходим опять к пункту 2), иначе поиск минимума окончен.
}}} Конец алгоритма.
Этот метод является одним из лучших методов безусловной оптимизации, но требует для своей реализации расчета матрицы Гессе, что при большом числе поисковых параметров является достаточно сложной и длительной процедурой. Однако идеи заложенные в этом методе нашли свое дальнейшее развитие в других методах оптимизации, например, в методах с переменной метрикой.
1.5 Методы оптимизации 1-го порядка
Методы оптимизации 1-го порядка требуют для своей реализации расчета не только значения целевой функции - J(X), но и расчета градиента от этой функции по поисковым параметрам g(X)=gradxJ(X)=xJ(X). Рассмотрим основные наиболее часто используемые методы 1-го порядка.
1.5.1 Метод наискорейшего спуска
В этом методе в качестве поискового направления выбирается направление антиградиента в текущей поисковой точке Xk, т.е.
Pk = - g(Xk). (1.5.1)
Антиградиент указывает направление наибольшего уменьшения целевой функции при движении из точки Xk.
Рис.1.5.1
Поиск минимума методом наискорейшего спуска
Алгоритм этого метода следующий.
{{{ Начало алгоритма.
1) Полагаем k=1 , Xk=Xinit и рассчитываем значение целевой функции J(Xk).
2) Рассчитываем градиент g(Xk) и поисковое направление Pk по формуле (1.5.1).
3) Определяем минимум в направлении Pk: k: min(J(Xk+kPk ). Рассчитываем новое приближение вектора поисковых параметров Xk+1=Xk+kPk.
4) Если |kPk|>, то увеличиваем k на единицу - k=k+1 и идем опять к пункту 2), иначе поиск закончен.
}}} Конец алгоритма.
Работу метода наискорейшего спуска в двумерном случае поясняет рис.1.5.1. Этот метод не оправдывает свое название, т.к. при точном поиске минимума в поисковых направлениях все направления взаимоортогональны и скорость сходимости у этого метода такая же низкая, как и в методе покоординатного поиска. Поэтому на практике этот метод используется крайне редко.