Выпуклые и вогнутые функции
|
|
~ |
|
|
Определение. Функция многих переменных f (X) называется выпуклой |
||||
|
|
~ ~ |
2 Q; 0 |
6 l 6 1: |
(строго выпуклой) в выпуклой области Q, если 8X1; X2 |
||||
~ |
~ |
~ |
~ |
|
f [(1 l )X1 |
+ l X2] 6 |
(<)(1 l ) f (X1) + l f (X2): |
|
|
В одномерном случае выпуклость проявляется в том, что функция всегда лежит п о д х о р д о й, соединяющей любые две точки на ее графике. Непосредственно из определения также следует, что линейная функция является выпуклой, хотя и не строго выпуклой.
Замечание. Если знак неравенства в определении выпуклой функции поменять на обратный, получится определение вогнутой функции. Специально рассматривать этот класс функций не имеет смысла, так как вогнутую функцию легко превратить в выпуклую, умножив ее на 1.
Выпуклые функции обладают рядом полезных для применения свойств. Рассмотрим их.
Свойство 1 (неравенство Иенсена). Заданная выпуклая комбинация,
состоящая из выпуклых функций, так же выпукла. То есть, если (~ ) — вы- f X
m
пуклая функция и å ai = 1; ai > 0, то
i=1
|
|
|
m |
|
|
|
~ |
|
m |
~ |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
f (åaiXi) 6 |
åai f (Xi): |
|
||||||||
|
|
i=1 |
|
|
|
|
|
i=1 |
|
|
||
Свойство 2 (выпуклость множества, заданного выпуклой функцией). |
||||||||||||
~ |
|
|
|
|
|
|
|
|
|
|
~ |
~ |
Если g(X) — выпуклая функция, то множество Q = fX : |
g(X) 6 0g выпуклое. |
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
~ |
Свойство 3 (выпуклость сечения). Если задана выпуклая функция f (X), |
||||||||||||
то функция одной переменной y(t) = |
~ |
+ tq~), представляющая собой се- |
||||||||||
f (X0 |
||||||||||||
~ |
|
|
~ |
|
в направлении ~q, является выпуклой. |
|||||||
чение функции f (X) из точки X0 |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
~ |
Свойство 4 (непрерывность). Заданая выпуклая функция f (X), опре- |
||||||||||||
деленная на выпуклом множестве Q, непрерывна в каждой внутренней точке |
||||||||||||
этого множества и имеет производные по любому направлению ~q: |
||||||||||||
~ |
|
|
1 |
|
|
|
|
|
~ |
~ |
|
|
|
d f (X) |
= |
|
|
|
lim |
|
f (X0 |
+tq~) f (X) |
: |
||
|
|
|
k |
k |
|
|
|
|||||
|
d~q |
|
~q |
|
|
|
t!+0 |
|
t |
|
||
Свойство 5 (свойство экстремума). Любой локальный минимум задан-
ной выпуклой функции (~ ) на выпуклом множестве является глобальным. f X Q
Замечания
Приведенное свойство имеет высокую значимость для выпуклой оптимизации, поскольку позволяет заменить глобальные условия минимума ло-
81
кальными, основанными на дифференциальных свойствах функций в предположении, что все частные производные существуют и непрерывны.
Для приведенного свойства имеем в виду задачу минимизации, поскольку максимизация достигается сменой знака у целевой функции.
Вектор частных производных функции многих переменных (~ ) в точке f X
~ называется градиентом, обозначается как
X
~Ñ f (~X) = |
ddx1 |
; :::; |
dxn |
T |
|
|
! |
|
|
||||
|
~ |
|
~ |
|
|
|
|
f (X) |
|
d f (X) |
|
|
|
и указывает направление скорейшего увеличения функции |
~ |
~ |
||||
f (X) в точке X. |
||||||
|
|
|
~ |
~ |
|
|
Противоположный ему по направлению вектор Ñ f (X) называется антигра-
диентом и определяет направление скорейшего убывания. Скорость изме-
нения функции (~ ) по направлению, задаваемому произвольным вектором f X
~q, называется производной по направлению и может быть выражена как проекция градиента на выбранное направление:
(~ ) d f X
d~q
~ |
|
~ |
|
= lim |
f (X0 |
+t~q) f (X) |
|
|
|||
t!0 |
k |
k |
|
t~q |
|
||
~ |
~ |
~ |
~ |
[Ñ f (X); ~q] |
|||
= pr~qÑ f (X) = |
|
|
|
|
k~qk |
||
|
|
|
|
~T ~
Ñf (X)~q
=k~qk :
Свойство 6 (дифференциальное свойство 1). Если заданная |
~ |
f (X) вы- |
пукла и дифференцируема на выпуклом множестве, то для любых двух точек
~ ~ |
этого множества |
|
|
|
X; X0 |
|
|
|
|
|
~ |
~ |
~ T |
~ ~ ~ |
|
f (X) > f (X0) + Ñ |
f (X0)(X X0): |
||
Матрица вторых частных производных (при условии их существования),
вычисленных в точке ~ , называется матрицей Гессе. Запишем ее как
X
|
|
|
0 |
d |
2 |
~ |
|
|
d |
2 |
~ |
1 |
|
|
|
|
|
f (X) |
|
|
f (X) |
|
|||||
|
d2 f (~X) |
dx1dx1 |
|
dx1dxn |
|
||||||||
H(~X) = Ñ2 f (~X) = |
|
= B |
|
~ |
... |
|
|
~ |
C |
: |
|||
dXdX~ ~ |
2 |
d |
2 |
||||||||||
|
|
|
Bd |
|
f (X) |
|
f (X)C |
|
|||||
|
|
|
B |
|
|
|
|
|
|
|
C |
|
|
|
|
|
B dxndx1 |
dxndxn |
C |
|
|||||||
|
|
|
@ |
|
|
|
|
|
|
|
|
A |
|
Свойство 7(дифференциальное свойство 2). Дважды дифференцируе- |
|||||||||||||
~ |
|
|
|
|
|
|
|
|
|
|
|
|
~ |
мая заданная функция f (X) выпукла (строго выпукла) в окрестности точки X
только тогда, когда ее матрица Гессе (~ ) неотрицательно (положительно)
H X
определена в этой точке.
Критерий Сильвестра: матрица является положительно (неотрицательно) определенной, если все ее угловые миноры положительны (неотрицательны).
82
9.2.1. Оптимизация функций
Задача минимизации функции многих переменных в неограниченной области
~ |
0 < xj < ¥; j = 1; :::; n: |
f (X) = f (x1; :::; xn) ! min; |
Необходимым условием локального минимума является равенство нулю всех частных производных (теорема Ферма):
(~ )
d f X = 0; j = 1; :::; n: dxj
Это условие первого порядка можно записать в компактной векторной форме
~~
Ñf (X) = 0:
Точки X , удовлетворяющие условию первого порядка, называются стационарными. В общем случае стационарность не обязательно связана с минимумом, стационарными являются точки как минимума, так и максимума, а также точки перегиба одномерных функций или седловые точки в многомерном случае. Достаточным условием локального минимума является поло-
жительная определенность матрицы Гессе (~ ) в стационарной точке.
H X
Для выпуклых функций условие первого порядка является необходимым и достаточным условием локального минимума.
Метод множителей Лагранжа
Если ограничения задаются совокупностью уравнений, то условная экстремальная задача оптимизации приобретает вид
(~ ) = ( ; :::; ) ! ; f X f x1 xn min
(~ ) = ( ; :::; ) = 0; gi X gi x1 xn
i = 1; :::; m; j = 1; :::; n:
и подход к решению этой задачи (9.1) основан на использовании функции Лагранжа
m |
|
|
|
|
F(x;l ) = f (x) + åli gi(x); x 2 Rn; l 2 Rm; |
|
(9.2) |
||
i=1 |
|
|
|
|
|
~ |
T |
|
|
зависящей не только от оптимизируемых переменных X = (x1; :::; xn) |
, но и |
|||
|
||||
~ |
T |
|
|
|
от дополнительных переменных L = (l1; :::; lm) |
|
|
||
— так называемых множи- |
||||
телей Лагранжа, число которых равно количеству ограничений.
83
Необходимые (и достаточные в случае выпуклости всех участвующих функций) условия минимума имеют вид
~ |
~ |
|
|
|
|
dF(X;L) |
= 0; |
j = 1; :::; n; |
|
|
||||
|
dxj |
|
|
|
~ |
~ |
|
|
|
|
dF(X;L) |
= 0; |
i = 1; :::; m: |
|
|
||||
|
dli |
|
|
|
Получаем систему, состоящую из (n + m) уравнений с тем же количеством переменных (x1; :::; xn; l1; :::; lm).
Всякое ее решение определяет точку X = (x10; x20; :::; xn0), в которой может быть экстремум функции f (x1; x2; :::; xn). Следовательно, решая систему уравнений, получаем все точки, в которых функция цели (а более точно — линия пересечения двух поверхностей) может иметь экстремальное значение. Далее, применяя классические подходы математического анализа, исследуем эти точки на тип экстремума.
Подытожим, что определение экстремальных точек в задаче нелинейного программирования методом множителей Лагранжа включает следующие этапы:
составляем функцию Лагранжа;
находим частные производные от функции Лагранжа по переменным xj и li и приравниваем их нулю;
решаем систему (n + m) уравнений частных производных, находим точки, в которых целевая функция может иметь экстремум;
среди точек, подозрительных на экстремум, находим такие, в которых достигается заданный экстремум, и вычисляем значение целевой функции в этих точках.
Теорема Куна–Таккера
Условие Слейтера: условие регулярности, которое заключается в том, что допустимая область функции имеет хотя бы одну внутреннюю точку, т. е.
9~ (~ ) < 0; = 1; :::; :
X gi X i m
Теорема (Куна–Таккера): при соблюдении условия Слейтера для существования оптимального плана в общей задаче (9.1) с регулярным множеством планов:
8x 2 X; x 2 riQ; |
(9.3) |
|
gi(x ) < 0; i = 1; k; |
||
|
84
где riQ — относительная внутренность множества Q, необходимо и достаточно существование такого вектора
l 0 2 R; li 0; i = 1; k; li0 — произвольные; i = k + 1; m;
что значения fx0; l 0g — седловая точка функции Лагранжа (9.2): |
|
|
|
||
F(x0; l ) F(x0;l 0) F(x; l 0); |
|
|
(9.4) |
||
|
|||||
8x 2 Q; 8l 2 Rm; li 0; i = 1; k |
|
|
|
||
и выполняется условие дополняющей нежесткости: l 0 gi(x0) = 0; |
i = |
|
. |
||
1; k |
|||||
Замечание |
|
|
|
||
Для ограничений, выраженных в виде линейных функций gi(x); i = 1; k, теорема Куна–Таккера верна без условия Слейтера (9.3).
Схема решения.
1.Убеждаемся в том, что данная задача является задачей выпуклого программирования, используя свойства и критерии выпуклых функций, выпуклых множеств.
2.Сформулируем и запишем задачу в виде (9.1). Множество Q стро-
им по функциям ограничений исходной задачи так, чтобы легко можно бы-
ло проверить принадлежность ему вектора x 2 Rn. Обычно Q = fx : xj 0; 8j 2 I I = fi = 1; ngg; I — является подмножеством I.
3.Определяем, является ли множество планов регулярным.
4.Находим стационарные точки функции Лагранжа. Решаем систему
уравнений:
8 dF(x; l ) |
= 0; i = |
|
; |
||
1; n |
|||||
> |
|
|
|
|
|
> |
|
|
|
|
|
> |
dxi |
|
|
|
|
> |
|
|
|
|
|
< |
|
|
|
|
|
>
|
|
|
|
|
|
|
li gi(x) = 0; i = 1; k; x 2 X; |
(9.5) |
|||||
g (x) = ; i = |
k + |
1 |
; m |
; |
|
|
> lii 0; 0 i = 1; k: |
|
|
|
|||
>
>
:
5.Для каждой найденой стационарной точки проверяем условие (9.4).
6.Если среди полученных стационарных точек отыщется седловая точка функции Лагранжа fx ; l g, значит x — решение исходной задачи x0 = x . Если седловой точки нет, то есть x0 2 intQ, то переходим к следующему
пункту.
7.Выполняем поиск решения задачи на границе множества Q. Если Q состоит из внутренних точек, то задача решения не имеет. Пусть L — граница множества Q, L 2 Q и множества Li; i = 1; s — элементы L (например, грани, ребра, угловые точки). Для продолжения поиска решения имеем совокупность следующих задач:
|
|
|
|
|
|
|
|
|
f (x) ! min; x 2 X; |
i = 1; s; |
|
|
|
|
(9.6) |
||
gi(x) 0; i = 1; k; gi(x) = 0; |
|
|||||||
где Xi = fx : x 2 Li; |
i = k + 1; mg: |
|||||||
85