Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1017

.pdf
Скачиваний:
0
Добавлен:
16.06.2024
Размер:
1.05 Mб
Скачать

функции является положительно-полуопределенной в любой точке множества X .

Теорема 7.

Сумма любого конечного числа выпуклых функций является выпуклой функцией.

Теорема 8.

 

 

 

 

 

 

 

 

 

 

 

N

N

 

 

 

Если функция f (x) выпуклая, тогда для x i si ,

i

1 выполня-

ется неравенство

 

 

 

 

 

 

i 1

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N

 

 

N

si .

 

 

 

 

 

 

 

f (x) f

i si

 

i f

 

 

 

 

 

 

 

 

i 1

 

 

i 1

 

 

 

 

 

Пусть X – выпуклое множество.

 

 

 

 

 

 

 

 

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

min f (x) при ограничениях

 

 

 

 

 

 

 

 

 

 

x X

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g

j

(x) 0,

j 1, ..., m,

x (x

, ...,

x

n

),

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

xi

0,

i 1, ..., n,

 

 

 

 

 

 

 

 

 

 

где

f (x), g j x – выпуклые функции на множестве X.

 

 

 

 

Область , являющаяся допустимой областью ЗВП, называется регу-

лярной,

если существует

точка

x(0) , x(0)

(x(0) , ..., x(0) )

такая,

что

 

 

 

i 1, ..., n и g j x(0) 0,

 

 

 

 

 

1

n

 

 

xi(0)

0,

j 1, ..., m .

 

 

 

 

 

Говорят, чтодлярегулярнойобласти выполняется условиеСлейтера.

 

Пусть задача выпуклого программирования сформулирована в канони-

ческой форме:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f (x) min;

x (x1, x2 , ..., xn );

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

g j (x) 0,

j 1, 2, ..., m;

 

 

(3.1)

 

 

 

 

 

xi 0,

i 1, 2, ..., n.

 

 

 

 

 

Рассмотрим

вектор

u u1, u2 , , um ,

у которого

u j R

и

u j 0, j 1, 2, , m. Построим функцию Лагранжа L(x, u) для задачи выпуклого программирования:

m

 

 

L(x,u) f (x) u j g j (x) f (x) (G,u).

(3.2)

j 1

 

 

Здесь G g1 (x), g2 (x), ..., gm (x) ;

G,u – скалярноепроизведение, а

компоненты вектора u u1, u2 , , um – множители Лагранжа.

 

41

Пара векторов x* , u* называется седловой точкой функции Лагранжа

L x,u , если вектор x* принадлежит области ,

u*j 0,

j 1, 2, ..., m , и вы-

полняется неравенство

 

 

L(x*, u) L(x*, u*) L(x, u*) .

(3.3)

Это неравенство означает, что L(x, u* ) имеет локальный минимум, а следовательно, и глобальный минимум в точке x* (так как L – выпуклая функция по переменной x) при u u* . Кроме того, функция L(x* , u) имеет

и глобальный максимум в точке u* при x x* . Следовательно, можно запи-

сать, что L(x* , u* ) min max L(x, u) .

x u j 0

Пусть область является областью, удовлетворяющей условию регулярности Слейтера для задачи выпуклого программирования (3.1).

Вектор x* (x1* , x2* , ..., xn* ) будет решением задачи выпуклого программирования (3.1) тогда и только тогда, когда существует вектор

u* (u* , u* , ..., u*

)

такой, что

x* 0,

u* 0,

где i 1, 2, ..., n и

j 1, 2, ..., m,

1 2

m

 

 

 

i

j

 

 

и пара векторов x* ,

u* является седловой точкой функции Лагранжа для за-

дачи выпуклого программирования (3.1), то есть выполняется неравенство

L(x* , u) L(x* , u* ) L(x, u* ) .

Теорема Куна – Таккера для дифференцируемых функций

Если функции f (x) и g j (x) из задачи выпуклого программирования

(3.1) непрерывно дифференцируемы в области , то, для того чтобы пара векторов x* , u* представляла собойседловую точку функцииЛагранжадля данной ЗВП, необходимо и достаточно выполнение следующих условий:

 

 

 

 

 

 

 

 

1)

 

L*

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*

 

L*

 

 

 

 

 

 

 

 

 

 

 

2)

 

 

 

 

 

 

 

0;

 

 

 

 

 

 

 

 

 

x ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

3) x* 0;

 

 

j 1, 2, , n;

 

 

 

 

 

 

 

 

4)

 

L*

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*

 

L*

 

 

 

 

 

 

 

 

 

 

 

5)

 

 

 

 

 

 

 

0;

 

 

 

 

 

 

 

 

 

u ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u

 

 

 

 

 

 

 

 

 

 

6) ui* 0,

i 1, 2, , m.

 

 

 

 

 

*

 

 

*

 

 

 

*

 

 

*

 

*

*

*

, u

*

,

L

 

L

L

 

 

L

 

,

L

Здесь L

L x

 

x

 

x ,

x

 

, , x

 

 

u

 

 

 

 

 

 

 

 

1

 

 

 

2

 

 

n

 

 

 

*

 

 

*

 

 

*

 

L

,

L

, ,

L

 

u

u

 

u

 

 

2

 

.

 

1

 

 

 

 

m

42

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

Пример 9.

 

 

 

 

 

 

f x1, x2 min,

x

 

 

 

 

 

2

2

2x2

;

f x1 , x2 x1 x2 8x1

g

x x

2

x 2

1 0;

 

 

1

1

2

 

 

 

g2

x x1 2x2 0,5 0;

 

x

0; x

2

0.

 

 

 

1

 

 

 

 

 

Решение.

Проверим, является ли вогнутой целевая функция. Это можно сделать разными способами:

1) С помощью матрицы Гёссе

 

2

0

 

H x

 

 

.

 

0

2

 

 

 

Определитель и главные миноры матрицы положительны; следовательно, матрицаявляетсяположительно-полуопределенной. Этодоказывает выпуклость функции f x1 , x2 .

2) С помощью собственных значений матрицы Гёссе

 

 

2

0

 

0; (2 )2 0;

1,2 2 0.

 

 

 

 

 

 

0

2

 

 

 

f x1 , x2 .

Это доказывает выпуклость функции

3)

Функция f x1 , x2

является выпуклой, т.к. представляет собой

сумму линейной функции

f1 8x1 2x2

(которую можно рассматривать

как выпуклую) и квадратичной формы f2 x12 x22 , которая является поло-

жительно-определенной и, следовательно, также выпуклой.

Система ограничений задачи включает только выпуклые функции. Следовательно, можно воспользоваться теоремой Куна – Таккера. Составим функцию Лагранжа по формуле (3.2):

L x,u x12 x22 8x1 2x2 u1 (x12 x22 1) u2 (0,5 x1 2x2 )

и запишем необходимые и достаточные условия существования седловой точки построенной функции:

1)

L

2x 2x u u

 

0;

 

 

 

 

2

 

 

 

1

 

1

1

 

 

 

 

 

x1

 

 

 

 

 

 

 

 

2)

 

L

2x

 

2 2x

u 2u

 

0;

 

 

2

2

 

 

x2

 

2

 

1

 

 

 

 

 

 

 

 

 

 

 

 

43

 

 

*

 

 

 

 

 

 

 

 

3)

 

L

(2x1 2x1u1 u2 )x1 (2x2 2 2x2u1 2u2 )x2 0;

x,

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4) x1 0;

x2

0;

 

 

 

 

 

 

5)

 

L

x2 x2

1 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

2

 

 

 

 

L

 

 

 

 

u1

 

 

 

6)

 

0,5 x 2x

0;

 

 

 

 

 

 

 

 

 

 

u2

 

1

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7)

 

L

2

2

1)u1 (0,5 x1 2x2 )u2

0;

u,

(x1

x2

 

 

u

 

 

 

 

 

 

 

 

8) u1 0, u2 0.

Найдем возможные варианты решения.

Анализ системы (1)–(8) приводит к различным вариантам упрощения системы. Например, анализируяуравнение(7), можносоставитьследующие системы уравнений:

x

0;

x

 

0;

 

 

 

 

 

 

 

1

0;

 

2

0.

 

 

 

 

 

 

u1

u2

 

 

 

 

 

 

x

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

2u2

0;

 

 

2x2 2 2x2u1

x2

0,25; u2 1,25.

 

 

0;

 

 

 

 

 

 

 

 

 

 

u1

 

 

 

 

 

 

 

 

 

 

 

 

0,5 x

2x

2

 

0;

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

x2

0;

 

 

 

 

 

 

 

 

 

 

 

 

2x 2x u u

2

0;

 

 

 

 

 

1

 

1

 

1

 

 

 

 

 

 

x1 1;

u1 0.

 

x2

x2

1 0;

 

 

 

 

 

 

 

 

1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

u2

 

 

 

 

 

 

 

 

 

 

 

 

x

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

0;

 

 

 

 

2x1 2x1u1 u2

 

 

x2 0,25; u2 0.

 

 

 

 

2x2

 

 

0;

 

0,5 x1

 

 

 

 

 

 

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

u1

 

 

 

 

 

 

 

 

 

 

 

 

2x1 2x1u1 u2 0;

 

 

 

 

2x

2

2 2x

2

u

 

2u

2

0;

 

 

 

 

 

 

 

 

 

1

 

 

отрицательные корни

x2

x2

1 0;

 

 

 

 

1

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2x2

0;

 

 

 

 

0,5 x1

 

 

 

 

44

Аналогичныйнаборуравненийможносоставитьизуравнения(3), сучетом соотношений (1), (2), (4). Можно заключить, что либо

2x1 2x1u1 u2 0;

2x2 2 2x2u1 2u2 0

либо

2x1 2x1u1 u2 0;x2 0

либо

x1 0

2x2 2 2x2u1 2u2 0

либо

x1 0x2 0.

и т.д.

Рассматривая все возможные варианты, получим набор систем уравнений, решение которых определяет точки, подозрительные на экстремум. Выберемизнихточку, длякоторойцелеваяфункцияминимальна. Этаточка и будет решением задачи.

Точка (0,344; 0,099), найденная в результате решения системы

2x

2x u

u

2

0;

 

 

1

 

1

1

 

 

 

 

2x2 2 2x2u1 2u2 0,

 

является точкой минимума функции f x1 , x2 : f 0,344;

0,099 3,113.

Пример 10.

 

 

 

 

 

 

 

 

 

 

 

Решить ЗВП

 

 

 

 

 

 

 

 

 

 

 

f x1 , x2 min,

 

x

 

f x1

, x2 4x12 12x22 8x1 12;

 

g

x

4x

12x

2

0,4 0;

 

1

 

 

 

 

1

 

 

 

 

 

 

x 4x12

12x2

0,4 0;

 

g2

 

x

0;

x

2

0.

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

Начальное приближение взять из интервала

 

0,1m x1

0,1m;

0,5n x2 2n.

 

1.Доказать выпуклость функций f и gi.

2.Нарисовать график функции и линии уровня.

3.Проверить выполнение условия теоремы 3 для функции f:

f x1 , x2 x1 f x2 f x1 .

4.Сформулировать условия теоремы Куна – Таккера для данной задачи.

45

5. Решить задачу. Решение.

f x1

, x2 4x12 12x22 8x1 12;

g

x

4x

12x

2

0,4 0;

1

 

 

 

1

 

 

 

x 4x12

12x2

0,4 0;

g2

x

0; x

2

0.

 

 

1

 

 

 

 

 

 

1. Докажем выпуклость функций f и gi. Для этого достаточно показать, чтоматрицаГёссеэтойфункцииявляетсяположительно-полуопределенной в любой точке допустимого множества.

Матрица Гёссе имеет вид

 

2 f

 

 

x1 x1

H (x)

 

2 f

 

 

x2 x1

 

 

2

f

 

 

 

 

 

x1 x2

 

 

2

f

 

.

 

 

 

 

 

x2 x2

 

 

 

Определим матрицу Гёссе целевой функции

 

8

0

 

 

 

 

.

 

0

24

 

 

 

Определитель и главные миноры матрицы положительны; следовательно, матрицаявляетсяположительно-полуопределенной. Этодоказывает выпуклость функции f x1 , x2 .

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

3. График целевой функции и линии уровня приведены на рис. 5.

f(x1 x2) 4x12 12x22 8x1 12

f

f

Рис. 5. График целевой функции и линии уровня

46

3. Проверим условие теоремы (3) о выпуклости функции, т.е. убедимся, что для любой пары точек x1, x2 из допустимого множества X выполняется неравенство:

( f (x1 ), x2 x1 ) f (x2 ) f (x1 )

или

f

(x1

x1 )

f

 

(x2

x2 ) f (x

 

) f (x ).

x1

x

 

 

2

1

2

2

1

2

1

1

 

 

1

 

 

 

 

 

 

Возьмем две произвольные точки x1 (1; 2);

x2 (2; 3) и вычислим ле-

вую часть неравенства:

 

 

 

 

 

f

8x

8;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

1

 

 

 

 

 

 

 

f

 

 

 

f

 

 

 

 

 

x1

x1

x2

x2

(8 1 8)(2 1) (8 2 8)(3 2) 8.

 

x1

x2

 

2

1

 

2

1

 

 

1

 

 

 

1

 

 

 

 

Вычислим правую часть неравенства:

f (x2 ) f (x1 ) (4 22 12 32 8 2 12) (4 12 12 22 8 1 12) 64.

Условие (13) теоремы 3 о выпуклости функции выполняется (8 64 ); следовательно, целевая функция f x1 , x2 – выпуклая.

4. Составим функцию Лагранжа по формуле (3.2):

L x,u 4x12 12x22 8x1 12 u1 ( 4x1 12x2 0,4) u2 (4x12 12x2 0,4)

и запишем необходимые и достаточные условия существования седловой точки построенной функции:

1)

 

L

8x 8 4u 8u

 

x 0;

 

 

2

 

 

 

x1

 

1

1

 

 

1

 

L

 

 

 

 

 

 

 

 

24x

 

12u 12u

 

0;

 

 

2

2

 

x2

 

1

 

 

 

 

 

 

 

 

 

 

 

2)

 

 

*

(8x 8

4u

8x u

)x

 

 

(24x

 

12u

12u

 

)x

 

0;

x, L

 

 

 

2

2

2

 

 

 

 

 

 

1

1

1 2

1

 

 

 

 

 

1

 

 

 

 

 

 

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3)

x1 0;

x2

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4)

L

 

4x

12x

2

0,4 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L

4x2

12x

2

 

0,4;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u2

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5)

 

 

L

( 4x1

 

 

 

 

 

 

 

 

 

2

12x2

0,4)u2

0;

 

u,

 

 

12x2 0,4)u1 (4x1

 

 

 

 

u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6)

u1 0,

u2

 

0.

 

 

 

 

 

 

 

 

 

47

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

Приведем различные варианты упрощения системы:

18x1u2 )x1 0;

1)(24x2 12u1 12u2 )x2 0;( 4x1 12x2 0,4)u1 0;

u2 0

(8x1 8 4u1 8x1u2 )x1 0;

2)(24x2 12u1 12u2 )x2 0;

u1 0;

(4x12 12x2 0,4)u2 0(8x1 8 4u1 8x1u2 )x1 0;

3)(24x2 12u1 12u2 )x2 0;( 4x1 12x2 0,4)u1 0;(4x12(8x1 812x2 0,4)u2 0.4u

Решая последовательно полученные системы уравнений, находим точки, подозрительные на экстремум. Среди них выбираем оптимальную.

Например, в системе уравнений (3), допуская u1 x2 0 , получаем

x1 0,759

и u2 0,314, т.е. находим базисное решение системы

(0,759; 0; 0; 0,314). Подставляя его в условиятеоремы Куна– Таккера, полу-

чаем, что это базисное решение является оптимальным решением исходной задачи: f (0,759; 0) 15,832.

Порядок выполнения работы

В процессе проведения лабораторной работы студент должен выполнить следующие задания:

1.Ознакомиться с теоретическим материалом.

2.Для ЗВП

f x , x

 

0,1nx2

0,2mx2

 

0,2nx

0,2m min;

 

 

1

2

 

1

 

 

 

2

 

 

 

1

x1 ,x2

g

 

x 0,1nx

0,2mx

 

 

 

 

n

0;

1

2

 

 

 

 

 

 

1

 

 

 

m n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g

 

x 0,1nx2

0,2mx

 

 

 

n

0;

2

2

 

 

 

 

 

 

1

 

 

 

 

 

m n

 

 

 

 

0;

 

x2 0.

 

 

 

 

 

 

 

 

x1

 

 

 

 

 

 

 

 

 

 

 

48

выполнить следующее.

Доказать выпуклость функций f и gi.

Нарисовать область допустимых значений и линии уровня.

Проверить выполнение условия теоремы 3 для функции f:

f x1 , x2 x1 f x2 f x1 .

Сформулировать условия теоремы Куна – Таккера для данной задачи.

Решить задачу. Начальное приближение взять из интервала

 

0,1m x1 0,1m;

0,5n x2

2n .

3.

Составить отчет.

 

 

4.

Защитить работу.

 

 

Контрольные вопросы

1.Какая функция является выпуклой (строго выпуклой), вогнутой (строго вогнутой)?

2.Какая матрица называется матрицей Гёссе?

3.Какая функция является положительно-полуопределенной в выпуклом множестве?

4.Какая точка называется внутренней, внешней, граничной точкой выпуклого множества?

5.Какая область называется регулярной?

6.Как составляется в задачах минимизации функция Лагранжа?

7.Что такое седловая точка функции Лагранжа?

49

Раздел 4. МЕТОДЫ БЕЗУСЛОВНОЙ МИНИМИЗАЦИИ

Лабораторная работа 5. Одномерная оптимизация нелинейных функций без ограничений

Целью проведения студентом лабораторной работы является:

формирование умения и навыков безусловной минимизации функций методами нулевого порядка;

формирование умения и навыков одномерной минимизации.

Теоретические основы

Общая задача нелинейного программирования без ограничений: минимизировать целевую функцию f (x) R, x Rn .

Задача минимизации функции решается с помощью построения итерационного алгоритма; причем если в алгоритме не используются производные функции f (x) , то метод называется методом нулевого порядка. Если в

алгоритме используются первые производные функции f (x) , то метод

называется методом первого порядка; если вторые производные – методом второго порядка и т.д.

Методы нулевого порядка

Методы нулевого порядка применяются в тех случаях, когда:

1)вычисление производных функции f (x) затруднительно;

2)при вычислении производных значительно теряется точность алго-

ритма;

3)функция f (x) не имеет производных;

4)функция f (x) является функцией «овражного типа», то есть когда

она очень медленно убывает в одном направлении.

Методынулевого порядканеприхотливы к свойствамцелевой функции: не требуют ее непрерывности, дифференцируемости, монотонности и т.д. Рассмотрим некоторые из них, в частности методы одномерной оптимизации f (x) min, a x b и многомерной оптимизации

f (x1, x2 , , xn ) min, x Rn .

Методы одномерной оптимизации

Метод перебора Метод перебора является простейшим из прямых методов минимиза-

ции. Пусть f (x) - непрерывная функция на интервале [a, b] и требуется

50

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]