
- •Одномерная задача оптимизации
- •Многомерная задача безусловной оптимизации
- •Задача выпуклого программирования
- •Задача нелинейного программирования с ограничениями типа равенств
- •Теорема Куна-Таккера для задачи нелинейного программирования с ограничениями типа неравенств
- •Теорема Куна-Таккера для общей задачи нелинейного программирования
- •Аналитическое решение многомерных задач нелинейного программирования
Теорема Куна-Таккера для общей задачи нелинейного программирования
Рассмотрим общую задачу нелинейного программирования
|
(1) |
где –
произвольная функция,
|
(2) |
не пустое ограниченное замкнутое множество.
Нам
понадобятся далее понятия множителей
Лагранжа и функции
Лагранжа для
общей задачи
нелинейного программирования. Функция
Лагранжа
для задачи (1) с ограничениями (2)
определяется формулой
где ,
-
-и
-
векторы множителей
Лагранжа,
соответственно.
Нам
понадобится также понятие условий
регулярности для общей задачи
нелинейного программирования.
Если точка и
ограничения
являются активными
ограничениями,
то условие линейной независимости
векторов
,
а также условие линейной независимости
векторов
называются условиями
регулярности ограничивающих функций в
точке
.
Смысл условий регулярности раскрыт в
предыдущих параграфах.
Теорема
1 (теорема
Куна-Таккера).
Пусть функции ,
,
имеют
непрерывные частные производные в
некоторой окрестности точки
и
пусть эта точка является точкой локального
минимума функции
.
Пусть, кроме того, выполняются условия
регулярности ограничивающих функций
,
в
точке
.
Тогда существуют такие множители
Лагранжа
,
,
не все из которых равные нулю одновременно,
что для функции
Лагранжа
точка
является стационарной
точкой функции,
т.е.
|
(3) |
Теорема
1 означает, что в ее условиях вместо задачи
условной оптимизации (1),
(2) можно решать задачу
безусловной оптимизации
Необходимым
условием существования локального
минимума этой задачи в некоторой
точке является
условие
(см.
Теорему 2.1).
Аналитическое решение многомерных задач нелинейного программирования
Ограничимся рассмотрением задачи нелинейного программирования с ограничениями типа неравенств
|
(1) |
где (
)
– произвольная функция,
|
(2) |
не пустое, ограниченное замкнутое множество.
Рассмотрим
прямое решение задачи ,
(без
использования теоремы
Куна-Таккера),
а также решение этой задачи на основе
использования теоремы
Куна-Таккера
Прямое решение (без использования теоремы Куна-Таккера).
Общая схема прямого решения задачи нелинейного программирования:
Из условия
определяем все стационарные точки функции
в области
;
Определяем все критически точки функции (точки не дифференцируемости) функции
в области
;
Для каждой из границ области
(ограничивающих функций) решаем соответствующую задачу на условный минимум:
из уравнения
выражаем
переменных через остальные
переменных и подставляем их в выражение для функции
;
вместо исходной задачи условной оптимизации получаем задачу безусловной оптимизации
переменными;
решаем эту задачу – находим стационарные точки полученной функции, лежащие на соответствующей границе области
;.
Решаем
задачу, аналогичную задаче, рассмотренной
в п.3, для каждого из множеств, которое
определяется пересечением границ
области ;
Во
всех отобранных точках вычисляем
значения функции и
выбираем ту (или те), в которой значение
функции наименьшее
Заметим,
что в общем случае такой подход трудно
реализовать на практике, поскольку
далеко не всегда удается разрешить
уравнения относительно
указанных переменных.
Решение с использованием теоремы Куна-Таккера.
Общая схема решения задачи нелинейного программирования с использованием теоремы Куна-Таккера:
Записываем функцию Лагранжа
(3)
Находим градиенты
(
),
(
),
[1,
] функций
(
),
(
),
[1,
];
Находим стационарные точки функции Лагранжа, т.е. точки, в которых градиент этой функции равен нулю:
(4)
Находим точки, в которых нарушаются условия регулярности ограничивающих функций.
Во всех стационарных точках функции, а также точках нарушения условий регулярности ограничивающих функций вычисляем значения функции
и выбираем ту (или те), в которой значение функции наименьшее