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

Lektsiyi_Ukhanska_1

.pdf
Скачиваний:
19
Добавлен:
12.02.2016
Размер:
2.03 Mб
Скачать

нецілочисельний розв’язок, то оптимальним значенням залишаємо

L0

0

. У плані

X

*

2

друга компонента є дробовою, тому з області допустимих розв’язків виключаємо смугу

0 x2

1

і задачу 2 розбиваємо знову на дві - задачу 4 і 5:

 

 

 

 

 

 

Задача 4

 

 

 

Задача 5

 

L 3x

x

2

max

L 3x

x

2

max

 

 

 

 

 

1

 

 

 

 

 

 

 

 

1

 

 

 

 

 

4x

3x

2

18

4x

3x

2

18

 

 

 

1

 

 

 

 

 

 

 

1

 

 

 

 

 

 

x

 

2x

 

6

x

 

2x

 

6

 

 

 

2

 

 

2

 

1

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

0

x

 

4

 

 

 

 

x

5

 

 

 

 

 

 

 

5

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

0

x

 

0

 

 

 

x

 

4

 

 

 

 

2

 

1

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x , x

2

Z

 

 

 

 

 

 

 

 

 

x , x

2

Z

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3-крок.

 

Розв’язуючи

задачу 4

 

симплекс-методом,

отримаємо L 12

при

*

4; 0; 2; 2; 0; 0 . Задачу 4

виключаємо з розгляду,

оскільки план цілочисельний,

але

X 4

змінюємо значення

 

*

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L0 : L0 L X 4 12 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14

 

 

 

 

 

 

 

15

 

 

1

 

1

 

 

 

 

 

Розв’язуючи задачу 5,

отримаємо

L

 

 

при

*

 

 

 

;1; 0;

 

;

 

 

;0;3 .

L0

не

 

 

3

X 5

 

4

4

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

змінюється (

L0

0 ), бо план

*

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X 5 нецілочисельний. Оскільки перша компонента дробова,

то з області розв’язків виключаємо смугу

3 x1

4

і задачу 5 розбиваємо на 6 і 7:

 

 

 

 

 

Задача 6

 

 

 

 

 

 

 

Задача 7

 

 

 

 

 

 

 

 

 

 

 

L 3x

x

2

max

 

 

 

 

L 3x

 

x

2

max

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

4x1 3x2 18

 

 

 

 

4x1 3x2 18

 

 

 

 

 

 

 

 

 

 

 

 

2x2

 

6

 

 

 

 

 

 

2x2 6

 

 

 

 

 

 

 

 

 

 

 

x1

 

 

 

 

 

 

x1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 x1 3

 

 

 

 

 

 

 

4 x1 4

 

 

 

 

 

 

 

 

 

 

 

 

 

1 x

2

4

 

 

 

 

 

 

 

1 x

2

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x , x

2

Z

 

 

 

 

 

 

 

 

 

x , x

2

Z

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4-крок. Умови задачі 7 суперечливі. Розв’язуючи задачу 6, обчислюємо L 10,5

при

*

3;

3

 

;

3

 

; 0; 0; 0.5; 2.5 . Оскільки

L 10,5 L0 12 ,

то задачу 6

виключаємо з

X 6

 

2

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

розгляду.

Ми

розглянули всі задачі

і

знайшли,

 

 

що

оптимальним

 

цілочисельним

 

 

 

 

 

 

 

 

 

 

 

 

*

4; 0; 2; 2; 0; 0

і

Lmax 12 .

 

 

 

 

 

 

 

розв’язком поставленої задачі буде X X 4

 

 

 

 

 

 

 

60

РОЗДІЛ 5. ЕЛЕМЕНТИ НЕЛІНІЙНОГО ПРОГРАМУВАННЯ.

§ 5.1. Екстремум функції багатьох змінних.

Безумовний екстремум.

Нехай задана функція двох змінних

z

f

x,

y

.

Необхідна ознака існування екстремуму.

Якщо

fx P0

P00,

x

0

, y

0

 

 

 

 

fy P0

є точкою екстремуму функції

z f x, y , то

0 при умові, що ці частинні похідні існують.

Функція може мати екстремум також і в тих точках, де хоча б одна з частинних

похідних не існує. Наприклад, функція

z

 

x

2

y

2

має мінімум в точці О(0;0), хоча

 

 

 

похідні в цих точках не існують.

 

 

 

 

 

 

 

 

Означення. Точки, в яких частинні похідні

/

,

 

/

функції z f x, y перетворюються в

f x

f y

нуль або не існують, називаються критичними точками цієї функції.

Достатня ознака існування екстремуму.

Нехай

P

x

, y

0

 

0

0

 

 

- критична точка функції

z

f

x,

y

.

Якщо величина

AC B 2

0

, де

 

 

2

f

 

 

 

A

x

 

 

 

2

,

P0

 

 

2

f

 

 

 

B

x y

 

,

P0

 

 

2

f

 

 

 

C

y

 

 

 

2

, то

P0

P

x

, y

0

 

0

0

 

 

є точкою

екстремуму функції

мінімуму, якщо

A

z 0 C

f

x, y 0 .

,

причому точкою максимуму, якщо

A 0 C 0

і

Якщо

наявність в точці

0

,

P

 

0

то в точці P0 x0 , y0 екстремуму немає. Якщо

x0 , y0 екстремуму залишається відкритим.

0

, то питання про

Умовний екстремум.

Нехай тепер необхідно знайти екстремум функції z f x, y , якщо на аргументи функції накладено певні обмеження, а саме x, y 0 ( рівняння зв’язку ). Щоб знайти умовний екстремум функції z f x, y , записують так звану функцію Лагранжа

 

L x, y f x, y x, y ,-

 

де

- невизначений постійний множник, і шукають екстремум функції

L x,

умови екстремуму зводяться до системи трьох рівнянь з трьома невідомими

y . Необхідні

x, y, :

61

L

 

f

 

 

 

x

x

x

 

 

 

 

 

L

 

f

 

 

 

 

 

 

y

y

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x, y 0

 

 

 

 

 

 

 

 

 

 

 

 

 

Розв’язавши систему, знаходимо Обчислюємо

0

 

/

 

/

 

 

 

 

 

 

 

 

 

L

 

x

L

y

 

 

 

 

 

 

 

/

//

//

 

 

x

L

xx

L

xy

 

 

 

 

 

 

 

/

//

//

 

 

y

 

xy

 

yy

P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

критичні точки. Нехай P0 x0 , y0 , 0 - критична точка.

.

Якщо визначник екстремуму нема.

0

, то

P

x

, y

0

 

0

0

 

 

- точка максимуму,

0

- мінімуму,

0

-

§ 5.2. Загальна постановка задач нелінійного програмування.

Метод множників Лагранжа.

Задача нелінійного

екстремуму цільової функції

програмування формулюється як задача знаходження n змінних при наявності обмежень

f x1 , x2

,..., xn max min

 

(5.1)

gi x1 , x2 ,..., xn ;bi , , 0

i 1, m

(5.2)

x j 0,

j 1, n ,

 

 

(5.3)

якщо хоча б одна з функцій g i

чи

f є нелінійною відносно змінних

x j .

Математичні

моделі багатьох

економічних і технічних задач є

задачами саме

нелінійного програмування.

Будь-який невід’ємний розв’язок системи нерівностей (5.2) будемо вважати

допустимим розв’язком задачі нелінійного програмування, а ті допустимі розв’язки, при

яких цільова функція (5.1) досягає екстремуму, - оптимальними.

Множину допустимих розв’язків будемо розглядати як деяку сукупність точок n -

вимірного простору

R

n

. Точку

X x1 , x2 ,..., xn будемо називати внутрішньою точкою

 

допустимої області, якщо її координати перетворюють нерівності (5.2) в строгі нерівності;

якщо ж хоча б одне з обмежень перетворюється в рівність, то таку точку називають

граничною.

62

В евклідовому просторі система обмежень дає нам область допустимих розв’язків,

яка на відміну від задачі лінійного програмування, не завжди буде опуклою. Тому точка,

яка визначає екстремум цільової функції, може знаходитись як на границі області допустимих розв’язків, так і всередині.

Розглянемо задачу про пошук мінімуму функції (5.1)

f x

, x

2

,..., x

n

min

 

 

 

 

1

 

 

 

 

 

 

 

 

gi x1 ,..., xn ;bi

0

i 1, m .

 

 

 

(5.4)

Припустимо, що функції

 

f x1 , x2 ,..., xn

і

gi x1 ,..., xn ,bi

,

i 1, m та їх частинні похідні

неперервні. З курсу математичного аналізу ми знаємо, що таку задачу називають задачею на умовний екстремум або класичною задачею оптимізації. Введемо множники Лагранжа

i ,

i 1, m і побудуємо функцію Лагранжа

 

 

 

 

 

m

 

 

 

 

L x1 , x2 ,..., xn , 1 , 2 ,..., m

f x1 , x2 ,..., xn i gi

x1 , x2 ,..., xn ;bi

 

(5.5)

 

 

i 1

 

 

 

Необхідні умови екстремуму функції Лагранжа утворюють систему

n m

рівнянь

 

L

 

f

 

m

g

 

j 1, n

 

 

 

 

 

 

 

 

i

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x j

 

x j

i 1

x j

,

 

(5.6)

 

L

 

 

 

0 i 1, m

 

 

g

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

яку розв’язуємо відносно n m невідомих

x1 ,..., xn , 1 ,... m . Далі визначаємо, в яких із

знайдених точок функція мети досягає мінімуму. Порівнявши значення

f min із значеннями

функції (5.1) на межі, знаходимо точку глобального мінімуму.

 

Приклад. Знайти

f

 

4x

x

2

 

 

 

 

1

1

 

x

x

2

180

1

 

 

 

x

, x

2

0

1

 

 

 

8x

 

x

2

min

2

2

 

 

 

.

Запишемо функцію Лагранжа і необхідні умови існування екстремуму

L 4x1 x12 8x2 x22 180 x1 x2

L 4 2x1 0x1

L 8 2x2 0x2

L 180 x1 x2 0

63

Розв’язавши систему рівнянь, знаходимо координати

x1

91, x2

89, 186

точки,

підозрілої на екстремум. Використовуючи другі частинні похідні, можна показати, що в

точці

91,89

функція f має

умовний

мінімум. Значення функції в цій точці

f 91,89 17278. Перевіривши

значення

функції на межі, робимо висновок, що

fmin f 91,89 17278.

 

 

 

У тому випадку, коли умови зв’язку є нерівностями gi x1 ,..., xn ;bi 0 , то спочатку

знаходимо точки безумовного екстремуму з рівняння

f

0,

x

j

 

j

1,

n

.

Серед знайдених

точок вибираємо ті, координати яких задовольняють умову зв’язку нарешті, визначаємо точки, які задовольняють систему рівнянь

g

i

x

,..., x

n

;b

 

1

 

i

0

, і,

f

 

m

 

g

 

0,

j 1, n

 

 

i

 

i

 

 

 

 

 

 

 

 

x j

 

i 1

 

x j

 

 

g

x

,..., x

n

;b

0

 

i

 

1

 

i

 

 

 

Точки, знайдені в результаті розв’язування цієї системи, разом з точками, визначеними на першому етапі, досліджуємо далі аналогічно як і при пошуку безумовного екстремуму.

Метод множників Лагранжа має обмежене застосування, оскільки система (5.6), як правило має не єдиний розв’язок, пошуки яких пов’язані з великими труднощами аналітичного й обчислювального характеру.

§ 5.3. Задачі випуклого програмування.

Задача випуклого програмування є частинним випадком задачі нелінійного

програмування, коли функції мети f

 

й системи обмежень g i

є випуклими неперервно-

диференційованими функціями. Нехай задано n - вимірний простір Rn

Означення 1. Функція f

, задана на випуклій множині G R

n

, називається випуклою,

 

якщо

для

довільних

двох

точок

X1 , X 2 X

 

і

довільного 0 1

виконується

співвідношення

f X1

1 X 2 f X1 1 f X 2 , і

вгнутою, якщо f X1 1 X 2 f X1 1 f X

2 .

Розглянемо задачу випуклого програмування

 

 

 

 

f x1 , x2 ,..., xn max min

 

 

 

 

(5.7)

gi x1 , x2 ,..., xn ;bi 0 i

 

 

0

 

 

 

 

1, m

 

 

 

(5.8)

x j 0,

j

 

,

 

 

 

 

 

 

 

 

1, n

 

 

 

 

 

 

 

(5.9)

64

де X x1 ,..., xn G R

n

,

f

і g i

є випуклими функціями.

 

Означення 2. Множина допустимих розв’язків задачі випуклого програмування

задовольняє умови регулярності (умови Слейтера), якщо існує хоча б

одна точка X 0 G така,

що умови обмежень (5.8) виконуються як строгі

нерівності, тобто точка X

0 є внутрішньою точкою області G : gi X 0 ;bi 0 .

Особливість випуклого програмування полягає в тому, що в цих задачах локальний мінімум ( максимум ) збігається з глобальним. Центральне місце в теорії випуклого програмування займає теорема про сідлову точку, яка є узагальненням класичного методу множників Лагранжа для визначення екстремуму при наявності умов обмеження,

записаних у вигляді нерівностей.

 

 

 

 

 

 

 

 

 

 

 

Означення 3. Точка

X

0

,

0

x0

, x0

,..., x0

, 0 ,..., 0

називається сідловою точкою

 

 

 

 

 

 

 

1

 

 

2

n

1

 

m

 

функції Лагранжа (5.5) задачі випуклого програмування (5.7)-(5.9), якщо

L X

0

, L X

0

,

0

L X ,

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

( це точка, в якій функція досягає максимуму по X і мінімуму по )

Теорема Куна-Такера.

 

 

Вектор

X 0

 

буде оптимальним розв’язком задачі випуклого

програмування тоді і тільки тоді,

коли існує такий вектор 0 , що точка

X 0 , 0

 

є сідловою точкою функції Лагранжа, а область допустимих

розв’язків задовольняє умови регулярності.

Якщо функції мети

 

f

 

і системи обмежень

g i

є неперервно-диференційованими

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

Lx

0 j

0

(5.10)

x

0

 

L

0

0

 

 

 

 

 

 

j

 

x

 

 

 

 

 

j

 

 

 

 

 

 

(5.11)

x

0

0,

j 1, n

j

 

 

 

 

 

 

L

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

0

L0

0

 

i

 

i

 

 

 

 

 

 

 

 

 

0i

0,

i

 

 

1, m

(5.12)

(5.13

(5.14)

(5.15)

65

Умови (5.10)-(5.15) називають умовами Куна-Такера і вони записані для задачі на пошук максимуму цільової функції. Для задачі на мінімум у нерівностях (5.10), (5.13)

матимемо протилежні знаки.

У загальному випадку розв’язати задачу нелінійного програмування не вдається.

Теорема Куна-Такера теоретично дає можливість перейти від задачі випуклого програмування до задачі пошуку сідлової точки функції Лагранжа, на множині, заданій простими обмеженнями, які включають умови невід’ємності i і належності X 0 до множини допустимих розв’язків.

Безпосереднє застосування теореми Куна-Такера чи умов (5.10)-(5.15) для визначення вектора X 0 - розв’язку основної задачі випуклого програмування - пов’язане з великим об’ємом обчислень, є малоефективним і знайти розв’язок вдається дуже рідко.

Проте ці теореми зручно застосовувати для перевірки “підозрілих” точок на оптимальність. Для цього достатньо з умов (5.10)-(5.15) при заданому X 0 визначити вектор 0 . Якщо такий розв’язок існує, то пара X 0 , 0 буде сідловою точкою функції Лагранжа, а X 0 - оптимальним розв’язком задачі випуклого програмування.

Приклад. Знайти мінімум цільової функції f x

f x x

2

min

 

 

при умовах

g

x

2

x

2

1 0;

g

 

x

x

2

0; g

 

x

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

 

2

 

 

2

1

 

2

 

3

1

 

2

0

.

Розв’яжемо задачу спочатку графічно.

 

x2

 

 

 

 

 

 

 

 

 

 

g =0

 

 

 

 

 

 

 

 

2

 

 

 

 

 

g3=0

 

 

 

 

 

 

 

 

 

 

1

 

 

x1

 

 

 

 

 

 

 

 

 

g1=0

X

*

 

2

 

;

2

 

 

 

 

 

2

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Як видно з рисунка функція

f може мати мінімум в точці

X

*

2

 

;

2

 

 

 

 

2

2

.

 

 

 

 

 

 

 

 

Враховуючи, що задача задовольняє умови Слейтера, запишемо регулярну функцію Лагранжа:

L x1 , x2 x2 1 x12 x22 1 2 x1 x22 3 x1 x2

66

і систему Куна-Такера:

L

2 x

 

 

 

 

0,

L

1

2 x

 

2

 

x

 

 

 

0,

 

2

3

 

 

2

2

2

3

x

1

1

 

 

 

x

 

 

1

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

L

x

2 x

 

 

 

 

 

0,

 

 

x

 

L

 

x

 

1 2 x

 

2

 

x

 

 

 

 

 

 

 

2

3

 

 

2

 

 

 

2

2

2

2

3

1

x

1

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L

x1 x2

 

1

0,

 

L

x1

x2

 

0,

 

 

L

 

x1

x2

0

,

 

 

 

 

 

 

2

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L

 

 

x

2

x

2

1

0,

 

 

 

L

 

 

x

 

x

2

 

0,

 

 

 

L

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

1

 

1

 

 

 

 

2

 

 

 

 

 

 

 

2

 

 

 

 

 

2

 

1

 

2

 

 

 

 

 

 

 

3

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

0,

2

 

0,

 

3

0 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Оскільки x1

, x2

0

, то з перших чотирьох умов залишаться лише дві

2 1 x1 2 3 0,

 

 

1 2 1 x2 2 2 x2 3 0 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В точці X

*

 

 

 

 

2

 

;

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

2

перше і третє обмеження є активними,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0,

x

x

2

1

 

:

а друге –

0

,

пасивним, а

тому при підстановці

X

*

в умови Куна-Такера повинна виконуватися умова

 

Остаточно ми отримуємо систему для визначення 1

, 2 :

21 3 0,

1

 

21 3 0,

1 0,

3

0 .

 

2

 

0

.

Розв’язок цієї системи

виконуються і в точці

X

існує і

*

 

2

 

 

 

 

 

 

 

2

;

 

1

 

4

 

 

 

 

 

 

;

2

 

2

2

 

 

 

 

 

 

1

 

3

2

 

 

функція

. Отже,

f

min

 

 

 

умови теореми Куна-Такера

2

2

.

 

 

 

§ 5.4. Задачі квадратичного програмування.

Задачі квадратичного програмування задовольняють всім вимогам теореми Куна-

Такера.

Означення 1. Квадратичною формою функції

виду

Fcij xi x j i 1 j 1n n

n

змінних

x

,..., x

n

1

 

називається функція

(5.16)

Означення 2. Квадратична форма F називається додатно-визначеною, якщо для всіх X

з області визначення цієї форми, крім точки X 0 , визначник

67

c

 

...

c

 

 

11

 

1n

 

det C ...

...

...

0

c

n1

...

c

nn

 

 

 

 

 

і додатно напіввизначеною, якщо det C 0 .

Теорема 2. ( Критерій Сильвестрова ). Для того щоб квадратична форма була додатно-

 

визначеною, необхідно і достатньо,

щоб усі головні мінори матриці C були

 

додатні

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c

0,

 

 

c

 

c

 

0, ...,

 

C 0.

 

 

 

 

11

12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

11

 

2

 

c

 

c

 

 

 

n

 

 

 

 

 

 

 

 

 

21

22

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Означення 3. Задача

нелінійного програмування називається задачею квадратичного

 

програмування, якщо цільова функція є додатно напіввизначеною

 

квадратичною формою, а область допустимих розв’язків є випуклою.

 

Зауважимо,

 

 

 

 

 

 

 

 

 

 

 

 

-

якщо всі визначники i

додатні, то квадратична форма буде додатно визначеною;

-

якщо в ряді

1, 1 ,..., n знаки чергуються, то форма буде від’ємно-визначеною ;

-

якщо rangC r n , то форма буде додатно напіввизначеною при умові, що перші

 

r визначників є додатними, а решта дорівнюють нулю;

 

-

якщо rangC r n , в

 

ряді

1, 1 ,..., r

знаки чергуються і r 1

... n 0 , то

 

квадратична форма буде від’ємно напіввизначена;

 

-

якщо в ряді

1, 1

,..., n

 

знаки

не чергуються, серед i є від’ємні,

то квадратична

 

форма буде невизначеною.

 

 

 

 

 

 

 

 

 

 

Задача квадратичного програмування полягає у знаходженні екстремуму випуклої

квадратичної цільової функції при заданій системі обмежень:

 

 

 

n

 

 

 

n n

max min

F d j x j

ckj xk x j

 

 

j 1

 

 

k 1 j 1

 

 

 

n

 

 

0 i

 

0

bi aij x j

1, m

 

 

j 1

 

 

 

 

 

 

 

x

j

0,

j 1, n

 

 

 

 

 

 

 

 

 

 

 

або у матричному вигляді

 

 

 

 

 

 

 

 

F D

T

X X

T

CX max

 

 

 

 

B AX 0

X 0,

(5.17)

(5.18)

(5.19)

68

де

X x

,..., x

n

;

1

 

 

D

d

1

,..., d

n

 

 

,

 

c

c

...

c

 

 

 

 

 

11

12

 

1n

 

 

 

 

 

 

 

 

 

C

c21

c22

...

c2n

c

 

 

 

 

 

 

,

ij

 

...

... ... ...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

cn 2

...

 

 

 

 

 

cn1

cnn

 

 

c

ji

 

.

Як і в загальному випадку задачі нелінійного програмування не існує ефективного методу для визначення глобального екстремуму задачі квадратичного програмування.

Запишемо функцію Лагранжа:

L x

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

n

n

 

 

 

 

 

 

 

 

m

 

, x

2

,..., x

n

, ,

2

,...,

m

 

d

j

x

j

 

 

c

kj

x

k

x

j

 

 

 

1

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

j 1

 

 

 

 

 

k 1

j 1

 

 

 

 

 

 

 

 

i 1

 

де i - множники Лагранжа, або

 

 

B Ax ,

 

 

 

 

1 ,..., n .

L X , D

T

X X

T

CX

T

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Якщо для функції Лагранжа існує сідло ва точка

X 0

, 0

умови теореми Куна-Такера

(5.10)-(5.15).

Ввівши

 

 

додаткові

i 1, m , нерівності (5.10) і (5.13) запишемо у вигляді рівностей:

 

n

 

 

 

bi

aij x j

 

,

(5.20)

 

 

j 1

 

 

 

, то для неї виконуються

змінні v j

j 1, n і wi

L

 

v

 

0

j 1, n

0

 

 

 

 

 

x

 

 

j

 

 

j

 

 

 

 

 

 

 

 

 

L

 

w

0

i 1, m

0

 

 

 

 

 

 

 

i

 

 

i

 

 

 

 

 

 

 

 

 

(5.21)

v j

0

j 1, n ,

wi

0

i 1, m .

Тоді умови Куна-Такера можна подати так:

L

 

 

v

 

0

j 1, n

 

 

0

 

 

 

 

 

 

 

 

 

 

 

x

 

 

 

j

 

 

 

 

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

L

 

 

w 0

i 1, m

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

0

v

 

0

 

j 1, n

j

j

 

 

 

 

 

 

 

 

 

 

0 w 0

 

i

 

 

 

1, m

 

i

 

 

i

 

 

 

 

 

 

(5.22)

 

i

0,

w 0

i 1, m

 

 

 

i

 

 

 

 

x j 0 ,

v j 0

j

 

.

 

1, n

 

Розв’язок системи (5.22), а значить і розв’язок задачі лінійного програмування

(5.17)-(5.19) можна знайти методом штучного базису ( F Myi

max при умовах

 

 

 

 

 

 

i

 

(5.22); тут yi - штучні змінні, введені в рівняння (5.22)1 і (5.22)2).

69

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