Next: Programowanie wypukłe. Wstęp.
Up: Programowanie matematyczne i układy
Previous: Punkty skrajne.
  Spis rzeczy
6.1
Własności geometryczne. Niech

będzie przestrzenią
wektorową rzeczywistą oraz

będzie jej
wektorową przestrzenią. Połóżmy

i niech

,

,

będą funkcjonałami liniowymi, ograniczonymi na

, oraz liczby

.
Następny problem, właśnie jego rozwiązanie :
 |
(6.1) |
gdzie dla
 |
(6.2) |
nazywamy
programowaniem liniowym .
Następne twierdzenie daje geometryczne rozwiązanie problemu
(
), (
).
6.2
Twierdzenie Niech

, gdzie

jest poliedrem zdefiniowanym przez (
![[*]](file:/usr/local/lib/latex2html/icons/crossref.gif)
). Wtedy punkt

jest rozwiązaniem (
![[*]](file:/usr/local/lib/latex2html/icons/crossref.gif)
), gdy
zachodzi taka równość:
 |
(6.3) |
dla niektórych

,

, gdzie

,
Dowód będzie wnioskiem z własności problemu dualnego do
(
), (
).
6.3
Definicja. Punkt

będziemy nazywać

-punktem, gdy zachodzi taka własność:
 |
(6.4) |
6.4
Definicja. 
-punkt

nazywamy
niezdegenerowanym, gdy zachodzi taka równość :
 |
(6.5) |
6.5
Definicja. Poliedr 
(
![[*]](file:/usr/local/lib/latex2html/icons/crossref.gif)
) nazywamy
prostym, gdy każdy

-punkt jest niezdegenerowany
Następne twierdzenie kojarzy
-punkty poliedra
oraz jego
punkty skrajne.
6.6
Twierdzenie. Niech poliedr

jest zdefiniowany przez
(
![[*]](file:/usr/local/lib/latex2html/icons/crossref.gif)
). Wtedy zbiór wszystkich

-punktów poliedra

jest taki sam jak zbiór punktów skrajnych poliedra

.
Niech
będzie
-punktem
, oraz zachodzi
równość:
 |
(6.6) |
gdzie
. Jest jasne, że mamy równość:
,
ponieważ
, oraz
 |
(6.7) |
Innymi słowy
dla
wszystkich
. Na mocy definicji (
)
mamy, że
ponieważ
. Ostatnia równość oznacza, że poliedr
jest obszarem zwartym tj. ograniczonym, co zakładamy.
Stąd otrzymujemy, że ograniczenia funkcjonałów
, na
generują przestrzeń
. To daje wtedy
oczywiście
 |
(6.8) |
Równości (
) oznaczają, że
, tj.
punkt
jest skrajnym!
Odwrotnie, gdy
jest punktem skrajnym poliedra
,
wtedy istnieje punkt
,
,
jeśli
! Jasne, że
oraz punkty
, co jest sprzeczym z
założeniem skrajności punktu
, to znaczy, że
i
co dowodzi
twierdzenie
6.7
Uwaga Wyżej w postaci uwikłanej skorzystaliśmy z
takiego twierdzenia.
6.8
Twierdzenie Wypukły poliedr

dla układu
nierówności
 |
(6.9) |
gdzie

, może być przedstawiony w
postaci
gdzie

jest ograniczonym wielościanem w

oraz

jest wypukłym stożkiem
wielościennym, złożonym z rozwiązań odpowiedniego układu
nierówności jednorodnych:

,

.
Rozważmy odpowiedni do (
) następny układ
nierówności
 |
(6.10) |
gdzie
jest nową współrzędną,
wspólnie ze zmiennymi
. Jest
oczywistym, że układ (
) wydziela w przestrzeni
zbiór -
-stożek rozwiązań
. Niech teraz stożek
jest przecięty
hiperpłaszczyzną o równaniu
.
Jeżeli
należy tej warstwie przekroju
, to
. Odwrotnie, jeżeli
, to
należy do
przekroju stożka
.
Wypukły stożek
jest wielościenny to znaczy jezt złożony z wypukłych kombinacji
skończonego zbioru punktów. Ponieważ dla wszystkich
punktów jego ostatnia współrzędna jest
,
to tworzące elementy tego stożka są dwóch rodzajów:
-
-
 |
(6.11) |
Punkty rodzaju 1) będą istnieć koniecznie, ponieważ
. Oczywi-ście, można uważać,
że wszystkie
,
skalując punkty z 1).
Tak więc, każdy punkt
ma następującą
reprezentację:
 |
(6.12) |
Na hiperpłaszczyźnie
są tylko punkty
dla których, oczywiście
. To zanczy, że poliedr
jest wyczerpany wszystkimi możliwymi kombinacjami typu
 |
(6.13) |
gdzie
 |
(6.14) |
Zbiór punktów
tworzy wypukły wielo-ścian
, a punkty
, tworzą
wypukły stożek
. Tak więc,
otrzymaliśmy poszukiwane rozłożnie
6.9
Twierdzenie (o istnieniu) Jeżeli zbiór wartości
dopuszczalnych problemu programowania liniowego
 |
(6.15) |
jest niepusty oraz

, wówczas rozwiązanie
(
![[*]](file:/usr/local/lib/latex2html/icons/crossref.gif)
)
istnieje.
Dowód. Rozważmy zbiór
, złożony z
wektorów
, takich że dla
każdego
istnieje wektor
, taki że
.
Oczywiście, że
jest stożkiem.
6.10
Lemat Stożek

jest
skończenie zgenerowany.
Musimy pokazać, że
, gdzie
,
. Zdefiniujmy wektory:
 |
(6.16) |
Oczywiście, że wszystkie
, tj
.
Niech teraz
. Wtedy dla pewnego
i niektórych
,
spełnione są relacje:
 |
(6.17) |
dla
. Ale (
) dokładnie
oznacza że
 |
(6.18) |
tj.
,
albo
 |
(6.19) |
6.11
Lemat Stożek

jest domknięty.
Połóżmy teraz
, gdzie
dla
,
.
Oczywiście
i obraz
- skończenie
wymiarowa podprzestrzeń w
. Na mocy
Twierdzenia Banacha o operatorze odwrotnym, istnieje ograniczony
odwrotny operator
,
taki że dla
oraz
,
. Niech teraz
,
; wtedy istnieje ciąg
,
taki, że
. Dalej, istnieje taka liczba
, że przy
zachodzi
.
Ponieważ dla
 |
(6.20) |
ciąg
, jest
ograniczony, to można wybrać podciąg
taki, że
.
Dalej mamy: (ponieważ operator
jest ciągły!)
.
Ostatnia równość znaczy że
,
tj. stożek
jest domknięty
Z warunku istnienia dopuszczalnego elementu
, istnieje element stożka
w
postaci
. Oprócz tego mamy, że
. To
znaczy w szczególności, że
że
dla
. Tak więc, zbiór
jest niepusty i
.
Stąd
(lemat
), tj. istnieje taki element
, dla którego
, co rozwiązuje problem (
)
6.12
Metoda simpleks - Algorytm rozwiązania problemu
kanonicznego
Problem kanoniczny ma postać:
 |
(6.21) |
Zdefiniujmy także:
Krok 1 Znaleźć punkt skrajny

,

, ze zbioru elementów dopuszczalnych.
(Jak szukać

będzie
niżej powiedziane)
Krok 2 Zbudować simpleks - tablicę dla tego punktu

(P
ATRZ TABLICA)
Krok 3 Zbadać simpleks - tablicę:
- i)
- jeśli wszystkie
, to
jest rozwiązaniem problemu (
).
- ii)
- jeśli przy niektórym
i
, to wartość problemu jest
, gdzie
.
- iii)
- Niech w rzędzie
są ujemne liczby, a
odpowiednie kolumny
złożone z liczb dodatnich.
Połóżmy
. Oczywiście że
. kolumna z indeksem
nazywana wtedy rozwiązywalną.
Jeśli

jest osiągalny przy kilku
wartościach

, to w jakości kolumny rozwiązywalnej wybieramy
dowolną z-taką samą wartością

.
Oznaczmy

dla

.
Wiersz wektora

nazywany jest
rozwiązywalnym. (Jeśli

jest
osiągalny przy kilku indeksach

to
wybieramy dowolny wiersz odpowiedniego wektora.) Wtedy element

wektora

nazywany
jest
elementem rozwiązywalnym tablicy
.
| |
| |  |
| | |
| |  |
| | ... |
| |  |
| |  |
| | ... |
| |
 |
| | ... |
| |  |
| | |
|
| baza |
| | |
| |  |
| |
 |
| | ... |
| |
 |
| |
 |
| | ... |
| |
 |
| | ... |
| |
 |
| |  |
|
|  |
| |  |
| |  |
| | 1 |
| | ... |
| | 0 |
| |
 |
| | ... |
| |
 |
| | ... |
| |
 |
| |
 |
|
| ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
|
|
 |
| |
 |
| |  |
| | 0 |
| | ... |
| | 0 |
| |
 |
| | ... |
| |
 |
| | ... |
| |
 |
| |
 |
|
| ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
| | ... |
|
|  |
| |  |
| |  |
| | 0 |
| | ... |
| | 1 |
| |
 |
| | ... |
| |
 |
| | ... |
| |
 |
| |
 |
|
|  |
| | |
| |
 |
| |  |
| | ... |
| |  |
| |
 |
| | ... |
| |
 |
| | ... |
| |
 |
| | |
|
|
 |
| | |
| | |
| | 0 |
| | ... |
| | 0 |
| |
 |
| | ... |
| |
 |
| | ... |
| |
 |
| | |
|
TABLICA 1
Dalej należy wyłączyć z wektorów bazowych wektor
. Wartość funkcjnału na nowym punkcie
skrajnym
z nowymi numerami
bazowymi
rośnie na
.
Krok 4 Zbudować nową tablicę simpleku dla nowej bazy
, tzn. mamy właściwie rozwinąć wektory
względem nowej bazy,
wymienionej wyżej.
Nową tablicę simpleksu konstruujemy przy pomocy poprzedniej.
Elementy tablicy
,
, stojące pod wektorami
nie leżące w kolumnie
rozwiązywalnej lub w rozwiązywalnym wierszu poprzedniej tablicy
simpleksu mogą być wyliczone przy pomocy takiej reguły
prostokąta:
Rys. 1
|
z liczby

odjąć produkt

na

, podzielony
przez

. Wtedy elementy wierrza
rozwiązywalnego mają postać:

. Jest jasne, że w kolumnie
rozwiązywalnej

, a
reszta wartości równa zero. Dalej zaczynamy ponownie badać
tablicę simpleksu, otrzymaną wyżej.
6.13
Przykład Rozwiązać niezdegenerowany problem
programowania liniowego w postaci kanonicznej:
przy zadanym skrajnym punkcie
Rozwiązanie. Wektory bazowe
. Mamy tablicę
simpleksu:
.
|
 |
|
2 |
1 |
1 |
-1 |
 |
|
|
 |
 |
 |
 |
 |
|
 |
1 |
1 |
1 |
-1 |
1 |
0 |
|
 |
-1 |
3 |
2 |
1 |
0 |
1 |
 |
 |
|
-2 |
-1 |
-2 |
1 |
-1 |
|
 |
|
|
-3 |
-3 |
0 |
0 |
|
TABLICA 2
Z tablicy 2 widzimy, że w jakości kolumny rozwiązywalnej
można wziąść kolumny
lub
. Weźmy kolumnę
. Wtedy
mamy
, a wiersz rozwiązywalny weźmy jako
. Zmieniamy w bazie wektor
wektorem
, i dla nowej
bazy konstuujemy nową tablicę simpleksu:
.
|
c |
|
2 |
1 |
1 |
-1 |
 |
baza |
|
 |
 |
 |
 |
 |
|
 |
1 |
4 |
3 |
0 |
1 |
1 |
|
 |
1 |
3 |
2 |
1 |
0 |
1 |
|
 |
|
7 |
5 |
1 |
1 |
2 |
|
 |
|
|
3 |
0 |
0 |
3 |
|
TABLICA 3
Widzimy z tablicy 3 że
, tak więc punkt
będzie rozwiąza-niem naszego
problemu, dając
.
Aby uzasadnić metodę simpleks ważne są następujące
lematy.
6.14
Lemat Punkt dopuszczalny

problemu
kanonicznego jest punktem skrajnym wtedy i tylko wtedy, gdy w
macierzy wektorów

kolumny, odpowiadające niezerowym współrzędnym
wektora

są liniowo niezależne
Dowód niewprost.
Konieczność Niech
jest punktem
skrajnym. Przypuśćmy że odpowiednie kolumny macierzy
są liniowo zależne, tj. przy
mamy równość:
tj.
. Ponieważ wektor
spełnia równanie
, otrzymujemy że
dla małych
. To znaczy że wektor
nie jest skrajnym. A to
znaczy, że wektory
są niezależne.
Teraz przypuśćmy, że
jest punktem
dopuszczalnym, oraz wektory
, są liniowo niezależne. Przy warunku, że
nie jest punktem
skrajnym, istnieją punkty
,
takie że
przy
niektórym
. Z tej równości widzimy, że
wektory
i
mają te same
niezerowe współrzędne co wektor
. Ponieważ
, to
co oznacza, że
, tj. wektory
, liniowo zależne co
zaprzecza założeniu. Tak więc
jest punktem skrajnym
6.15
Lemat Dla problemu niezdegenerowanego kaźdy punkt
dopuszczalny ma nie mniej niż

dodatnich współrzędnych.
Dowód niewprost.
Przypuśćmy, że istnieje punkt dopuszczalny, który ma mniej
niż
dodatnich współrzędnych. Dla
pewności będziemy uważać, że to pierwsze
współrzędne. Rozważmy zbiór
rozwiązań
układu
,
gdzie
.
Niech
jest punktem
skrajnym zbioru
, który oczywiście istnieje.
Wtedy oczywiście punkt
jest
punktem skrajnym zbioru
, u którego mniej niż
dodatnich wspólrzędnych. Ostatecznie
sprzeczne z niezdegenerowalnością problemu
6.16
Wniosek Dla problemu niezdegenrowanego punkt dopuszczalny
ma dokładnie

dodatnich
współrzędnych wtedy i tylko wtedy, gdy ten punkt jest punktem
skrajnym zbioru

punktów dopuszczalnych.
Następne twierdzenie uzasadnia metodę simpleks.
DODATEK
Według dowodu H. Bresisa: Ponieważ zbiory
są wszystkie zwarte, to dla
dowodu tego że
jest
niepuste, wystarczy pokazać, że rodzina
posiada własność przecięcia skończonego: dla wszystkich
podzbiorów skończonych
przecięcie
 |
(6.23) |
Przypuśćmy, że (
) nie spełniono, tj. istnieje
podzbiór
, że
 |
(6.24) |
Jeżeli
, wtedy oczywiście
(!)
Weźmy teraz rozbicie jedynki
, skojarzone z otwrtym pokryciem
, tj.
takie, że
Rozważmy teraz takie odwzorowanie
: dla każdego
 |
(6.25) |
Oczywiście
należy do powłoki wypukłej
punktów
oraz
odwzorowuje
w siebie. Na mocy twierdzenia Brauera o punkcie
stałym istnieje punkt
, taki że
 |
(6.26) |
Rozważmy wartości
,
(ponumerowane we właściwy sposób):
 |
(6.27) |
tak więc punkt
. Ponieważ
na mocy naszych założeń
,
co znaczy że
dla
pewnego
. Wtedy
, tj.
, co zaprzecza
(
). Tym samym
, co potrzebne było udowodnić
6.19
Twierdzenie (Brauera F.) Niech

,

oraz

. Wtedy

ma punkt stały.
Rozważmy odwzorowanie
i jego
wartości na
. Przypuszczamy, że
na
. Wtedy wektor
nie będzie się nigdzie równał zeru na
brzegu
, skąd widizmy że dla każdego
elementu
będzie zachodzić
nierówność. Dla
 |
(6.28) |
albo
 |
(6.29) |
Rzeczywiście, niech przy
będzie w
(
) równość, tj.
,
,
co znaczy, że
co jest sprzeczne z warunkiem
, skąd
. Tym samym
(
) zachodzi dla wszystkich
.
Wyliczając indeks
otrzymujemy, że istnieje punkt
, taki, że
albo
, tj. punkt stały w
.

Next: Programowanie wypukłe. Wstęp.
Up: Programowanie matematyczne i układy
Previous: Punkty skrajne.
  Spis rzeczy