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