Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Оптимизация, численные методы.pdf
Скачиваний:
357
Добавлен:
20.06.2014
Размер:
909.58 Кб
Скачать

где G замкнутая ограниченная область, граница которой задана уравне-

ниями gi (x) = 0, i =1,2,..., m. .

Решение задачи состоит из следующих этапов:

1) находим все стационарные точки функции f, лежащие внутри области G : х12,..., хL;

2) методом множителей Лагранжа решаем следующую задачу на условный экстремум:

m

L(x) = f (x) + λi (hi (x) zi2 ) min,

i=1

инаходим условно-стационарные точки xL+1,..., xS из необходимых условий:

L

= 0, i =1,2,..., m,

L

= gi (x) = 0 ,

 

 

xi

λi

L = −2 λi zi = 0; zi

3)из стационарных точек х1,x2,...,хL выбираем те, в которых выполняются достаточные условия локального минимума: хL1,хL2,...,хLk ;

4)сравнивая значения функции f в точках хL1,хL2,...,хLk с ее значениями в условно-стационарных точках xL+1,...,xS, находим

min f (x).

x G

5. ВЫПУКЛЫЕ ЗАДАЧИ ОПТИМИЗАЦИИ

5.1. Постановка задачи

Выпуклой задачей (или задачей выпуклого программирования) называется следующая задача оптимизации:

f (x) min; gi (x) 0,

i =1,2,...,m;

x G Rn ,

(5.1)

 

48

где f, g1, g2,....,gm – выпуклые функции, заданные на выпуклом и замкнутом множестве G .

Точка х, принадлежащая множеству G и удовлетворяющая неравенствам gi (x) 0, i =1,2,..., m; . называется допустимой в задаче (5.1).

Теорема 5.1:

Если функция f определена и выпукла на выпуклом множестве G Rn, то в выпуклой задаче локальный минимум является и глобальным.

Пусть х – точка локального минимума функции f, т.е. ε0 > 0 такое,

что

f (x€) f (x) x G U (x€,ε0 ).

Возьмем произвольную фиксированную точку x' G. Из условия выпуклости множества G следует, что точка

+ (1

λ)x'

λ (0,1)

x = λx

принадлежит множеству G. При

λ 1 x'εx ,

где

ε < min{ε0 , x'x},

получаем

x'x = λx'+(1 λ)x'x = (1 λ)(x'x€)(1 λ)x'x

1 1 x'εxx'x = x'εxx'x = ε < ε0 ,

что означает

x U (x€,ε0 )

и, следовательно,

+ (1

λ)x').

f (x) f (x) или

f (x)

f (λx

49

По условию функция f выпукла. Поэтому последнее неравенство примет вид

f (x€) λf (x€) + (1 λ) f (x').

В частности, при

λ =1 x'εx

имеем

f (x€) 1 x'εx f (x€) + 1 1 x'εx f (x').

Отсюда

 

ε

 

 

ε

 

f (x') ,

 

 

 

 

 

 

f (x)

 

 

x'x

 

 

 

x'x

 

 

или

f (x€) f (x') .

Так как х' – произвольная точка множества G, то из последнего неравенства следует, что х – точка глобального минимума функции f на G.

В дальнейшем в выпуклых задачах оптимизации, говоря "минимум", будем, подразумевать глобальный минимум.

Пример 5:

Функция

f (x1, x2 ) = x12 + x22

выпукла на R2, (0,0) – точка локального минимума функции f, она же и точка глобального минимума f на R2

(f (0,0) = 0 x12 + x22 (x1, x2 ) R2 ).

5.2.Условия оптимальности в выпуклых задачах

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

50

П = G × R+m

Пусть – декартово произведение множества G (области определения функций f (x) и g(х), i=1,2,...,m, в задаче (5.1)) и множества m-мерных векторов с неотрицательными координатами

Rm ={ λ = (λ ,λ ,...,λ ) Rm

 

λ 0,i =1,2,...,m }.

 

 

 

+

1 2

m

 

i

 

Функция

 

 

 

 

 

 

L(x,λ) = f (x) + (λ, g(x)), (x,λ) П,

(5.2)

где

m

(λ, g(x)) = λi gi (x)

i=1

– скалярное произведение векторов λ и g(х), называется функцией Лагранжа для выпуклой задачи оптимизации (5.1).

Точка (x*,λ* ) П, называется седловой точкой функции Лагранжа L(x,λ), (x,λ) П, если выполняются неравенства

L(x*,λ) L(x*,λ* ) L(x,λ* ),

x G, λ R+m

(5.3)

Условие (5.3) может быть записано также следующим образом

 

L(x*,λ* ) = min max L(x,λ) = max min L(x,λ).

 

x G λ R+m

λ R+m x G

 

Пример 6:

Функция Лагранжа для выпуклой задачи (5.1) при

n=1, m=1, f (x)=6 – x, g(x)=х/2 – 1

имеет вид

x

 

 

L(x,λ) = 6 x + λ

 

1 ,

x R+, λ R+

5

 

 

 

иимеет седловую точку (5,5). Ее график изображен на рисунке 5.

Взадачах с ограничениями типа равенств, как это отмечалось выше, решение следовало искать среди стационарных точек функции

L(x,λ). Что же касается выпуклой задачи оптимизации, то ее решение сводится к отысканию седловой точки функции Лагранжа.

51

Теорема 5.2:

Если пара (x*,λ*) – седловая точка функции Лагранжа (5.2), то х* – точка глобального минимума в задаче (5.1), т.е.

f(x* ) = min f (x).

xG

Пусть (x*,λ*) – некоторая седловая точка функции Лагранжа. Из

(5.2) и (5.3) получаем

f (x* ) + (λ, g(x* )) f (x* ) + (λ*, g(x* )) f (x) + (λ*, g(x)).

(5.4)

Из левой части неравенства (5.4) следует, что

 

(λ, g(x* )) (λ*, g(x* )).

(5.5)

Отсюда

 

 

(λ λ*, g(x* )) 0,

 

или в развернутом виде

 

 

m

 

 

(λi λ*i )gi (x* ) 0.

(5.6)

i=1

 

 

Поскольку λ*i 0 , i=1,2,...,m,

неравенство (5.6) имеет место, если

gi (x* ) 0,

i =1,2,...,m.

 

Итак, gi*) 0 и, кроме того,

m λ*i gi

i =1

Равенство (5.6) справедливо,

т.е.

m λ*i gi

i =1

λ*i 0 , поэтому

(x* ) 0.

в частности, и для

(x* ) 0.

(5.7)

λi = 0 , i=1,2,...,m,

(5.8)

Сравнивая неравенства (5.7) и (5.8), будем иметь

m

λ*i gi (x* ) = 0,

i =1

т.е.

52

(λ*, g(x* )) = 0 .

(5.9)

Так как

 

x G gi (x) 0, i =1,2,...,m и λi 0,

i =1,2,...,m,

то

 

m

 

λ*i gi (x) 0,

 

i=1

 

или

 

(λ*, g(x)) 0.

(5.10)

Неравенство (5.4) имеет место x G , поэтому из его правой части и из (5.9)-(5.10) получим

f (x* ) f (x) + (λ*, g(x)) f (x) x G.

Следовательно, х* – точка глобального минимума.

Теорема 5.3:

Для того чтобы пара (х*,λ*) являлась седловой точкой функции Лагранжа (5.2), необходимо и достаточно выполнение условий

L(x*,λ* ) = min L(x,λ* ),

(5.11)

x G

 

gi (x* ) 0,

i =1,2,...,m,

(5.12)

λ*i gi (x* ) = 0,

i =1,2,..., m .

(5.13)

Необходимость. Пусть (х*,λ*) – седловая точка функции (5.2). Тогда по определению

L(x*,λ* ) L(x,λ* ) x G,

что означает справедливость равенства (5.11).

Выполнение условий (5.12) и (5.13) было показано при доказательстве теоремы (5.2).

Достаточность. Пусть выполнены условия (5.11)-(5.13). Равенство (5.11) влечет справедливость правой части неравенства (5.3) x G. До-

кажем выполнение левой части неравенства (5.3) для всех λ R+m . Для

53

этого рассмотрим произвольные неотрицательные числа λ1, λ2,…, λm, Очевидно,

λ g

(x*) 0, i =1,2,...,m.

i i

 

Поэтому, используя неравенства (5.12) и (5.13), можно записать:

λ g

(x* ) λ*g

(x* ), i =1,2,...,m.

i i

i

 

Следовательно,

f (x* ) + (λi g (x* ))f (x*) + (λ*g (x* )),

что означает справедливость левой части неравенства (5.3).

Следует отметить, что теоремы 5.2 и 5.3 получены без каких-либо предположений о свойствах функций f , g1, g2 ,..., gm и структуре множества G.

В соответствии с теоремой 5.2, если удастся найти седловую точку функции Лагранжа (5.2), то тем самым будет решена задача (5.1), в которой все функции f и gi , i=1,2,...,m, а также множество G могут иметь различную природу, причем х* будет точкой глобального минимума. Если теоретически такой подход безупречен, то его реализация на практике возможна не всегда. Дело в том, что если функции f, gi, i=1,2,...,m, и множество G не выпуклы, то функция Лагранжа не всегда имеет седловые точки. Более того, даже если указанные функции и множество выпуклы и оптимальное решение задачи (5.1) существует, то в некоторых "вырожденных" случаях соответствующая функция Лагранжа может не иметь ни одной седловой точки.

Подтверждением последнего может служить следующая задача, в которой

n =1, m =1,

f (x) = −x;

g(x) = x2 0, G = {x R

 

x 0}

 

Здесь функции f (x) = −x,

g1(x) = x2 и множество G выпуклы.

Единственная точка х*=0 удовлетворяет ограничениям задачи; она же является и точкой глобального минимума. Однако функция Лагранжа L(x,λ) = –х + λх2 не имеет седловых точек (не выполняется необходимые

54