Методы штрафных функций
Совокупность методов, получивших это название, может применяться при решении задач с ограничениями как в виде равенств, так и в виде неравенств. Эти ограничения могут быть и нелинейными. Сохраняются только требования гладкости. Основная идея — свести задачу с ограничениями к задаче (чаще к последовательности задач) без ограничений. Делается это с помощью различных модификаций целевой функции и дальнейшего применения различных методов безусловной оптимизации.
Общая формулировка задачи следующая. Найти min F(x) при ограничениях
где все или часть функций-ограничений cj(x) могут быть нелинейны.
Идея метода штрафных функций, называемого также методом внешней точки, состоит в таком преобразовании целевой функции, чтобы в допустимой области ее значения не изменились, а за пределами допустимой области были очень велики по сравнению с исходной F(x). Тогда минимум новой функции и минимум исходной будут близки. Такое преобразование целевой функции может выполняться различными способами. Один из обычных приемов состоит в том, что к исходной F(x) прибавляется сумма штрафов gj(x) за нарушение ограничений. Если в текущей точке х j-oe ограничение выполнено (т.е. cj(x) <= 0), то штраф равен нулю, иначе, чем больше нарушение, тем больше штраф.
Часто принимают в качестве штрафов функции
Такая функция представляет собой квадрат невязки в j-ом ограничении, а общий штраф равен сумме штрафов. Так что преобразованная функция имеет вид
(2.13)
Далее решается задача поиска безусловного минимума Ф(х). Если взять коэффициент kn очень большим, то теоретически минимумы Ф(х) и F(x) близки. Но этого делать нельзя, так как введение штрафа порождает овраг. В направлениях вдоль границ ОДР функция меняется медленно, но при малом изменении невязок в ограничениях функция меняется очень сильно. В такой ситуации методы безусловной оптимизации работают плохо. Поэтому сначала решается задача с малым значением коэффициента штрафа (например, k1 = 1), полученное решение используется как начальное приближение для следующей задачи с к2 = 2, затем решается задача с к3 = 4 и так далее при все большем значении к. Фактически решается последовательность задач. Процесс останавливается, когда ограничения выполнены с требуемой точностью. Последняя точка минимума считается решением исходной задачи.
Если в исходной системе были ограничения-равенства, то штрафуются как положительные, так и отрицательные значения cj(x), т.е. gj(x) = сj2(х).
Естественно, что в самом лучшем случае метод может дать точку, близкую к одному из локальных минимумов F(x).
Достарыңызбен бөлісу: |