Смекни!
smekni.com

Нелинейное программирование (стр. 2 из 7)

При решении задачи из примера 2 мы рассматривали L(х;u) как функцию двух переменных

и
и, кроме того, предполагали, что значение параметра uвыбрано так, чтобы выполнялось ограни­чение. Если же решение системы

, j=1,2,3,…,n

в виде явных функций uполучить нельзя, то значения х и uнахо­дятся путем решения следующей системы, состоящей из n+1 урав­нений с n+1 неизвестными:

, j=1,2,3,…,n

Для нахождения всех возможных решений данной системы можно использовать численные методы поиска (например, метод Ньютона). Для каждого из решений (

) сле­дует вычислить элементы матрицы Гессе функции L, рассматри­ваемой как функция х, и выяснить, является ли эта матрица поло­жительно определенной (локальный минимум) или отрицательно определенной (локальный максимум).

Метод множителей Лагранжа можно распространить на случай, когда задача имеет несколько ограничений в виде равенств. Рас­смотрим общую задачу, в которой требуется

Минимизировать f(x)

при ограничениях

=0, k=1, 2, ..., К.

Функция Лагранжа принимает следующий вид:

L(x,u)=f(x)-

Здесь

—множители Лагранжа, т.е. неизвестные параметры, значения которых необходимо определить. Приравни­вая частные производные L по х к нулю, получаем следующую систему nуравнении с nнеизвестными:

………..

Если найти решение приведенной выше системы в виде функций вектора uоказывается затруднительным, то можно расширить систему путем включения в нее ограничений в виде равенств

Решение расширенной системы, состоящей из n+К уравнений с n+К неизвестными, определяет стационарную точку функции L. Затем реализуется процедура проверки на минимум или максимум, которая проводится на основе вычисления элементов матрицы Гессе функции L, рассматриваемой как функция х, подобно тому, как это было проделано в случае задачи с одним ограничением. Для некоторых задач расширенная система n+К уравнений с n+K неизвестными может не иметь решений, и метод множителей Лагранжа оказывается неприменимым. Следует, однако, отметить, что такие задачи на практике встречаются достаточно редко.

3. Условия Куна-Таккера

В предыдущем разделе было установлено, что множители Лаг­ранжа можно использовать при построении критериев оптималь­ности для задач оптимизации с ограничениями в виде равенств. Кун и Таккер обобщили этот подход на случай общей задачи нели­нейного программирования с ограничениями, как в виде равенств, так и в виде неравенств.

Рассмотрим следующую общую задачу не­линейного программирования:

минимизировать

(0)

при ограничениях

(1)

(2)

Определение:

Ограничение в виде неравенства

называется активным, или связывающим, в точке
, если
, и неактивным, или несвязывающим, если

Если существует возможность обнаружить ограничения, ко­торые неактивны в точке оптимума, до непосредственного решения задачи, то эти ограничения можно исключить из модели и тем самым уменьшить ее размеры. Основная трудность заключается при этом в идентификации неактивных ограничений, предшествующей ре­шению задачи.

Кун и Таккер построили необходимые и достаточные условия оптимальности для задач нелинейного программирования, исходя из предположения о дифференцируемости функций

. Эти условия оптимальности, широко известные как условия Куна—Таккера, можно сформулировать в виде задачи нахождения решения некоторой системы нелинейных уравнений и неравенств, или, как иногда говорят, задачи Куна—Таккера.

3.1. Условия Куна—Таккера и задача Куна—Таккера

Найти векторы

,удовлетворяющие следующим условиям

(3)

(4)

(5)

(6)

(7)

Прежде всего проиллюстрируем условия Куна — Таккера на примере.

Пример 3

Минимизировать

при ограничениях

Решение.

Записав данную задачу в виде задачи нелиней­ного программирования (0)-(2), получим

Уравнение (3), входящее в состав условий Куна—Таккера, принимает следующий вид:

откуда

Неравенства (4) и уравнения (5) задачи Куна — Таккера в данном случае записываются в виде

Уравнения (5.16), известные как условие дополняющей нежесткости, принимают вид

Заметим, что на переменные

и
накладывается требование не­отрицательности, тогда как ограничение на знак
отсутствует.

Таким образом, этой задачи условия Куна—Танкера записываются в следующем виде:

3.2. Интерпретация условий Куна — Таккера

Для того чтобы интерпретировать условия Куна — Таккера, рассмотрим задачу нелинейного программирования с ограничения­ми в виде равенств:

минимизировать

при ограничениях

Запишем условия Куна—Таккера

(8)

(9)

Далее рассмотрим функцию Лагранжа для задачи нелинейного программирования с ограничениями в виде равенств

Для этой функции условия оптимальности первого порядка запи­сываются в виде

Нетрудно видеть, что условия Куна-Таккера (8) и (9) совпадают с условиями оптимальности первого порядка для задачи Лагранжа.

Рассмотрим задачу нелинейного программирования с ограни­чениями в виде неравенств:

минимизировать

при ограничениях