5.1. Tablice sympleks
Algorytm sympleks wymaga by obszar dopuszczalny, na którym badamy ekstrema funkcji celu, był wielościanem z wierzchołkiem. Dowolny wielościan możemy ”przerobić” na wielościan z wierzchołkiem przechodząc do zadania równoważnego i zamieniając zmienne tak by były nieujemne.
Jeżeli xi≤0 to zastępujemy je nową zmienną xi′=-xi, gdzie xi′≥0.
Jeżeli xi∈R jest nieograniczone to zastępujemy je różnicą xi=xi+-xi-, gdzie xi+=≥0 oraz xi-=≥0.
W szczególności w tym rozdziale będziemy badać wielościany zapisane w postaci kanonicznej czyli W=x∈Rn|AxT=b,x≥0.
Opis wierzchołków i krawędzi zadania PL w postaci
kanonicznej.
Niech W=x∈Rn|AxT=b,x≥0 będzie
wielościanem. Dodatkowo zakładamy, że równania opisujące W są
liniowo niezależne -
czyli rzA=t= liczba równań.
Niech p
będzie wierzchołkiem W. Ze zbioru równań i ”nierówności
spełnionych jako równości” które spełnia wierzchołek p wybieramy n liniowo niezależnych w specjalny sposób. Po pierwsze wybieramy t równań AxT=b opisujących wielościan a potem uzupełniamy do n liniowo niezależnych równań dodając pewne xi=0.
Wynika to z lematu Steinitza o bazie. Dokładniej: ze zbioru równań spełnianych przez p wybieramy dowolnie bazę A - n liniowo niezależnych równań. Następnie zbiór liniowo niezależny AxT=b uzupełniamy do bazy równaniami z A. Muszą to być równania typu xi1=0,xi2=0,…,xin-t=0
Otrzymaliśmy układ n liniowo niezależnych równań z n niewiadomymi, którego jedynym rozwiązaniem jest punkt p. Macierz tego układu oznaczmy literą U.
Zmienne i1,…,in-t nazywamy niebazowymi zaś pozostałe
bazowymi.
Współrzędne niebazowe wierzchołka p są równe 0.
Uwaga: Wierzchołek ma co najwyżej t niezerowych współrzędnych.
Dla ułatwienia przenumerujmy tak zmienne by 1,2,…,n-t były
zmiennymi niebazowymi oraz n-t+1,…,n zmiennymi bazowymi.
Wtedy macierz równania opisującego W składa się z 3 części
A=NBb, gdzie B jest macierzą kwadratową.
rzU=n⇒rzB=t⇒B jest odwracalna.
Mnożąc układ równań AxT=b z lewej strony przez macierz B-1 otrzymujemy równoważny opis wielościanu W
Zaś wierzchołek ma współrzędne
p=0,…,0,b1,b2,…,bt.
Podsumowując, każdemu wierzchołkowi, przez wybór zmiennych bazowych
przyporządkowujemy układ równań o macierzy zawierającej podmacierz
jednostkową.
Definicja 5.1
Tablicą sympleks nazywamy taką macierz rozszerzoną układu
równań [A|b], że A zawiera podmacierz jednostkową rozmiaru t. Dokładniej,
można z macierzy A tak powykreślać kolumny i poprzestawiać
wiersze by uzyskać macierz jednostkową.
Tablicę sympleks nazywamy pierwotnie dopuszczalną gdy wszystkie
wyrazy wolne są ≥0. Co zapisujemy b≥0.
Jak pokazaliśmy poprzednio każdemu wierzchołkowi odpowiada co
najmniej jedna tablica sympleks pierwotnie dopuszczalna.
Dokładniej tyle tablic ile jest możliwości wyboru zmiennych
(nie)bazowych.
Stwierdzenie 5.1
Pierwotnie dopuszczalne tablice sympleks opisują wierzchołki.
Niech [A|b] będzie tablicą sympleks pierwotnie dopuszczalną. W
macierzy wybieramy kolumny tworzące macierz jednostkową. Zmienne
odpowiadające tym kolumną nazwiemy bazowymi zaś pozostałe
niebazowymi. Zmiennym niebazowym przypisujemy wartość 0. Bazowe
zmienne wyliczamy z układu równań po opuszczeniu zmiennych
niebazowych. Tak więc zmienne bazowe przyjmują wartości wyrazów
wolnych w odpowiedniej kolejności. Otrzymany punkt jest
wierzchołkiem gdyż spełnia n nierówności jako równania. t z
równań Ax=b i n-t z równań xi=0 spełnianych przez zmienne
niebazowe. Dodatkowo równania te są liniowo niezależne.
∎
Twierdzenie 5.1
Niech W=x∈Rn|AxT=b,x≥0 będzie
wielościanem. Dodatkowo zakładamy, że równania opisujące W są
liniowo niezależne -
czyli rzA=t= liczba równań. Niech p
będzie wierzchołkiem W. Wówczas:
a) Liczba niezerowych współrzędnych wierzchołka p jest nie większa niż liczba równań.
b) Istnieje taka odwracalna podmacierz B∈Rtt macierzy A, że [B-1A|B-1b] jest tablicą sympleks opisującą wierzchołek p.
c) Niech B∈Rtt będzie odwracalną podmacierzą macierzy A. Wówczas [B-1A|B-1b] jest tablicą sympleks opisującą wierzchołek p wtedy i tylko wtedy gdy macierz B zawiera wszystkie kolumny A, których indeksy są indeksami niezerowych współrzędnych wierzchołka p.
Stwierdzenie 5.2
Jeżeli w wielościanie W=x∈Rn|AxT=b,x≥0 opisanym t równaniami wierzchołek p ma t niezerowych współrzędnych to jest opisany dokładnie jedną tablicą sympleks.
Przykład 5.1
W tablicy sympleks x1x2x3x4x5x6x7ww0150-53001011-210100-60-4113
możemy wybrać kolumny 1, 2 i 7. Niebazowymi
zmiennymi są x3,x4,x5,x6 i one przyjmują wartość 0.
Wykreślamy kolumny zmiennych niebazowych i zmienne bazowe
wyliczamy z równania o macierzy x1x2x7ww010010010013.
Więc x1=1, x2=0 i x7=3. Wierzchołkiem
jest p1=1,0,0,0,0,0,3.
Wybierzmy teraz kolumny 2,
4 i 7. Otrzymamy wierzchołek p2=0,0,0,1,0,0,3.
Algorytm szukania wierzchołków.
|
|
Niech W=x∈Rn|Ax=b,x≥0 będzie |
wielościanem. Dodatkowo zakładamy, że równania opisujące W są |
liniowo niezależne - czyli rzA=t= liczba równań. |
|
Wybieramy maksymalne kwadratowe podmacierze B macierzy A. |
Jeżeli B jest macierzą odwracalną to mnożymy równanie Ax=b |
przez B-1 z lewej strony i otrzymujemy tablice sympleks. |
Jeżeli otrzymana tablica jest pierwotnie dopuszczalna to opisuje |
wierzchołek. |
Algorytm opisu krawędzi.
|
|
Niech [A|b] będzie tablicą sympleks pierwotnie dopuszczalną |
opisującą wierzchołek p. Szukamy krawędzi wychodzących z tego |
wierzchołka. Zaczynamy od wybrania n-1 równań z tych opisujących |
wierzchołek. Nie możemy odrzucać równań z układu Ax=b zatem dla |
pewnej zmiennej niebazowej zamiast xi=0 przyjmujemy xi≥0. |
|
Otrzymujemy opis prostej w której zmienna xi jest |
parametrem. Dla ustalenia uwagi przyjmijmy |
|
|
A=[A|b]=[x1…xtxt+1…xi…xnww1…0a1,t+1…a1,i…a1,nb1⋮⋱⋮⋮⋱aj,i⋱⋮⋮0…1at,t+1…at,i…at,nbt] |
|
Teraz wyliczamy zmienne bazowe xj=bj-aj,ixi, dla 1≤j≤t. Punkty otrzymanej prostej mają |
postać b1-a1,ixi,b2-a2,ixi,…,bt-at,ixi, 0,0,…,0,xi,0,…,0=b1,b2,…,bt,0,0,…,0+xia1,i,a2,i,…,at,i,0,0,…,0,1,0,…,0, gdzie xi stoi na i-tym miejscu. |
Jeżeli wszystkie aj,i≤0 to jedynym ograniczeniem jest |
xi≥0 i otrzymujemy krawędź nieskończoną. |
|
W przeciwnym |
przypadku największą wartością xi będzie minimum po wszystkich |
dodatnich aj,i z liczb bjaj,i czyli liczba |
Minbjaj,i 0≤j≤t,aj,i0. |
Uwaga 5.1
Liczba d=Minbjaj,i 0≤j≤t,aj,i0 wyznacza długość krawędzi. Jeżeli startujemy z wierzchołka p=b1,b2,…,bt,0,0,…,0 i poruszamy się w kierunku α=a1,i,a2,i,…,at,i,0,0,…,0,1,0,…,0 to p+dα jest kolejnym wierzchołkiem. Długością krawędzi jest liczba d⋅α.
Uwaga 5.2
Jeżeli minimum d=0 to krawędź ma długość 0 ( jest punktem ) i
nazywamy ją krawędzią zdegenerowaną.
Twierdzenie 5.2
Niech TS będzie pierwotnie dopuszczalną tablicą sympleks, z ustaloną bazą i opisującą wierzchołek p. Wówczas TS opisuje n-t krawędzi wychodzących z wierzchołka p i wektory kierunkowe tych krawędzi są liniowo niezależne. Wliczamy krawędzie zdegenerowane zaś n oznacza liczbę kolumn i t liczbę wierszy.
Ustawmy wektory kierunkowe w macierz a następnie wykreślmy kolumny zmiennych bazowych. Otrzymaliśmy macierz jednostkową n-t×n-t. Zatem wektory były liniowo niezależne.
∎
Uwaga 5.3
Aby opisać wszystkie krawędzie wychodzące z wierzchołka p należy
użyć wszystkich tablic sympleks opisujących p.
Przykład 5.2
Opiszmy ostrosłup W∈R3 o podstawie kwadratowej z
wierzchołkami
p1=0,0,0,p2=1,0,0,p3=0,1,0,p4=1,1,0 i o szczycie w punkcie p5=0,0,2.
W jest opisane układem nierówności:
Przerabiamy nierówności na równania dodając nowe zmienne i otrzymujemy postać kanoniczna:
Zapiszmy w postaci tablicy sympleks:
TS1=x1x2x3x4x5ww201102021012
Zmiennymi bazowymi są x4 i x5 zaś TS1 opisuje
wierzchołek:
Poruszamy się w kierunku wierzchołka p5¯ krawędzią
wyznaczoną przez x3:
TS1=↓x1x2x3x4x5ww201102021012.
Szukamy elementu centralnego.
Min21,21=2 zatem możemy
wybrać dowolny element kolumny 3-ciej.
TS2=k1k2k32-201-10021012. Zmiennymi bazowymi są teraz
x3 i x4 zaś TS2 opisuje wierzchołek p5¯=(0,0,2| 0,0)
Ile krawędzi wychodzi z W?
Z rysunku widać, że 4, zaś tablica TS2 opisuje tylko trzy krawędzie o
wektorach kierunkowych
k1→1,0,0,-2,0 - krawędź zdegenerowana
(długość 0) gdyż Min{02,∗}=0
k2→0,1,-2,2,0 w kierunku wierzchołka
p3¯
k3→0,0,-1,1,1 w kierunku wierzchołka
p1¯
Wędrując wzdłuż krawędzi zdegenerowanej k1 znajdujemy nową TS opisującą p.
Otrzymujemy k12-201-10021012→1-1012-120021012BB=TS3
Tablica TS3 opisuje dalej wierzchołek p5¯ i
krawędzie:
k4→1,1,-2,0,0 w kierunku wierzchołka
p4¯
k5→-12,0,0,1,0 - zdegenerowana k6=-12k1
k6→12,0,-1,0,1 w kierunku wierzchołka
p2¯
Definicja 5.2
Tablicą Sympleks opisującą zadanie programowania
liniowego
|
Maxx0=c∙x+b0|Ax=b,x≥0 |
|
nazywamy taką macierz, w której pierwszy wiersz reprezentuje
równanie x0-c∙x=b0, pozostałe wiersze równania
[A|b] i macierz ta zawiera podmacierz jednostkową. Zwyczajowo
pierwszy wiersz - opisujący funkcję celu jest oddzielony linią
poziomą. Podobnie znak równości przedstawiamy jako linię pionową.
Tablicę sympleks nazywamy dualnie dopuszczalną gdy w wierszu kosztów zredukowanych (nad kreską ) wszystkie
wyrazy są ≥0, dla zadania typu Max lub są ≤0, dla zadania typu Min.
Przykład 5.3
Tablicą sympleks dla zadania
Max x0=2x1+6x2-3x3 , gdy:
x1+2x2-3x3+x4=3
2x1+3x2-5x3+x5=7
2x1-3x2-7x3+x6=8
x1≥0, x2≥0, x3≥0
jest
x0x1x2x3x4x5x6WW1-2-630000012-31003023-5010702-3-70018
Funkcję celu zastąpiliśmy równaniem x0-2x1-6x2+3x3=0 zaś
podmacierz jednostkowa powstaje z kolumn odpowiadających zmiennym
o indeksach 0,4,5 i 6.
Uwaga 5.4
Ponieważ w algorytmie metody sympleks kolumna odpowiadająca zmiennej x0 nie zmienia się więc zwykle ją pomijamy.
Zadania
Ćwiczenie 5.1
Poniższe dwie tablice sympleks opisują to samo zadanie PL.
wylicz zmienne od a do l .
1 |
0 |
0 |
2 |
-3 |
5 |
2 |
1 |
0 |
-2 |
d |
e |
-3 |
a |
b |
c |
2 |
4 |
oraz
7 |
g |
h |
0 |
-7 |
-3 |
-4 |
1 |
2 |
i |
5 |
14 |
f |
0 |
1 |
j |
k |
l |
Ćwiczenie 5.2
Wiedząc, że poniższe tablice sympleks dotyczą tego samego zadania programowania liniowego wyznacz nieznane
współczynniki od a do k.
abc4-2-6310d3e70116f
oraz 4g0100-21h0312i-21jk3
Ćwiczenie 5.3
Wiedząc, że punkt p=(3,0,0,2,0,0,) jest
wierzchołkiem wielościanu
W=x|Ax=b,x≥0, gdzie
A=23-21-112-1-5-3301302-21b=807
wypisz wszystkie takie macierze B, zawarte w A, że
[B-1A|B-1b]
jest tablicą sympleks opisującą p.
5.2. Metoda sympleks
Wędrowanie między wierzchołkami, eliminacja Gaussa -
Jordana.
W zadaniu PL mamy wierzchołek p opisany tablicą sympleks. Dla
ustalenia uwagi przyjmijmy
x0x1…xtxt+1…xi…xnww10…0-ct+1…-ci…-cnb001…0a1,t+1…a1,i…a1,nb1⋮⋮⋱⋮⋮⋱aj,i⋱⋮⋮00…1at,t+1…at,i…at,nbt
Zakładamy, że krawędź odpowiadająca zmiennej xi jest skończona
i szukamy tablicy sympleks opisującej drugi koniec tej krawędzi.
Wyliczamy minimum po wszystkich dodatnich aj,i z liczb
bjaj,i czyli liczbę
Minjbjaj,iaj,i0. Wybieramy dowolny współczynnik aj,i,
na którym osiągane jest minimum. Nazywamy go elementem
centralnym. Na następnej tablicy zaznaczony będzie nawiasem.
x0x1…xj…xtxt+1…xi…xnww10…0…0-ct+1…-ci…-cnb001…0…0a1,t+1…a1,i…a1,nb1⋮⋮⋱⋮⋱⋮⋮⋱…⋱⋮⋮00…1…0aj,t+1…aj,i…aj,nbj⋮⋮⋱⋮⋱⋮⋮⋱…⋱⋮⋮00…0…1at,t+1…at,i…at,nbt
Teraz j - ty wiersz dzielimy przez aj,i zaś od każdego innego
wiersza k odejmujemy poprawiony j-ty wiersz pomnożony przez
ak,i - czyli zerujemy pozostałe miejsca k-tej kolumny.
Otrzymujemy macierz:
x0x1…xj…xtxt+1…xi…xnww10…d0…0-ct+1*…0…-cn*b0*01…d1…0a1,t+1*…0…a1,n*b1*⋮⋮⋱⋮⋱⋮⋮⋱…⋱⋮⋮00…dj…0aj,t+1*…1…aj,n*bj*⋮⋮⋱⋮⋱⋮⋮⋱…⋱⋮⋮00…dt…1at,t+1*…0…at,n*bt*,
gdzie d0=ciaj,i,d1=-a1,iaj,i,…,dj-1=-aj-1,iaj,i,dj=1aj,i,dj+1=-aj+1,iaj,i,…,dt=-at,iaj,i
Otrzymaliśmy tablicę sympleks. Z bazy wypadła zmienna xj a
doszła zmienna xi.
Test optymalności i koszty zredukowane. Rozważamy zadanie
typu
|
Maxx0=∑i=1ncixi+b0|Ax=b,x≥0 |
|
opisane tablicą sympleks TS. Oznacza to, że w górnym wierszu TS mamy
kolejno liczby
.
Ponieważ jest to tablica sympleks
wszystkie współczynniki ci odpowiadające zmiennym bazowym są
równe 0.
Jeżeli koszt zredukowany -cj odpowiadający zmiennej niebazowej
xj jest <0 ( cj>0 ) to krawędź wyznaczona przez zmienną
xj jest poprawiająca. Ponieważ wędrując tą krawędzią zmieniamy
tylko zmienne bazowe nie mające wpływu na funkcję celu i
zwiększamy liczbę x0=cjxj+b0.
Jeżeli koszt zredukowany -cj odpowiadający zmiennej niebazowej
xj jest = 0 ( cj=0 ) to krawędź wyznaczona przez zmienną
xj jest neutralna.
Jeżeli koszt zredukowany -cj odpowiadający zmiennej niebazowej
xj jest >0 ( cj<0 ) to krawędź wyznaczona przez zmienną
xj jest pogarszająca. Ponieważ wędrując tą krawędzią zmieniamy
tylko zmienne bazowe nie mające wpływu na funkcję celu i
zmniejszamy liczbę
.
Twierdzenie 5.3
Jeżeli w tablicy sympleks opisującej zadanie
Maxx0=∑i=1ncixi+b0|Ax=b,x≥0 wszystkie koszty
zredukowane są ≥0 to tablica ta opisuje wierzchołek
optymalny zadania zaś w prawym górnym rogu tablicy otrzymujemy
optymalną wartość funkcji celu.
Jeżeli w tablicy sympleks wszystkie koszty zredukowane są ≥0 to funkcja celu
x0=∑i=1ncixi+b0 może być
zapisana tylko przy pomocy zmiennych niebazowych
x0=∑xiniebazowecixi+b0 gdyż dla zmiennych bazowych ci=0. Funkcja celu x0 przyjmuje w wierzchołku opisanym tablicą
sympleks wartość b0 a dla pozostałych punktów wielościanu x0≤b0.
∎
Algorytm prosty metody sympleks.
|
|
Rozważamy zadanie typu Maxx0=∑i=1ncixi+b0|Ax=b |
|
0) Start: Dana tablica sympleks pierwotnie dopuszczalna. |
|
1) Test optymalności i wybór kolumny głównej. |
|
1a) Jeżeli wszystkie koszty zredukowane są nieujemne |
to STOP. Tablica opisuje wierzchołek optymalny. |
|
1b) Jeżeli nie to wybieramy kolumnę i, w której koszt |
zredukowany jest ujemny. |
|
|
2) Test nieograniczoności i wybór elementu centralnego. |
|
2a) Jeżeli wszystkie elementy kolumny i są |
niedodatnie to STOP. Funkcja celu jest nieograniczona. |
|
2b) Jeżeli istnieją ak,i>0 to jako element centralny wybieramy taki aj,i, |
|
że bjaj,i=Mink{bkak,i;ak,i≥0}. |
|
3) Znajdujemy tablicę sympleks opisującą drugi koniec krawędzi |
metodą Gaussa - Jordana, GOTO 1). |
Przykład 5.4
Rozwiązujemy zadanie:
Max x0=2x1+6x2-3x3 , gdy:
x1+2x2-3x3≤3
2x1+5x2-5x3≤7
2x1-3x2-7x3≤8
x1≥0, x2≥0, x3≥0
Postacią kanoniczną jest:
Max x0=2x1+6x2-3x3 , gdy:
x1+2x2-3x3+x4=3
2x1+5x2-5x3+x5=7
2x1-3x2-7x3+x6=8
x1≥0, x2≥0, x3≥0
Wierzchołkowi p1=0,0,0,3,7,8 odpowiada TS
1-2-630000012-31003025-5010702-3-70018
Idziemy krawędzią poprawiająca wyznaczoną przez x1
Liczymy Min31,72,82=3
więc jako element centralny wybieramy a1,1=1.
Po przekształceniach Gaussa - Jordana Otrzymujemy
10-2-32006012-310030011-210100-7-1-2012
Tablica ta opisuje wierzchołek p2=(3,0,0,0,1,2,)
Idziemy krawędzią poprawiająca wyznaczoną przez x2
Liczymy Min{32,11,*}=1 więc jako
element centralny wybieramy a2,3=1.
Po przekształceniach Gaussa - Jordana Otrzymujemy
1010-43090150-53060011-210100-60-4113
Kolumna odpowiadająca zmiennej x4 ma ujemny koszt zredukowany
więc na krawędzi przez nią wyznaczonej
k=6+5x4,0,1+2x4,x4,0,3+4x4|x4≥0
funkcja celu x0=9-x2+4x4-3x5=9+4x4 rośnie w nieskończoność.
5.3. Wymiar zbioru punktów optymalnych.
Twierdzenie 5.4
Niech zadanie Maxx0=∑i=1ncixi+b0|Ax=b,x≥0 będzie opisane tablicą sympleks pierwotnie i dualnie dopuszczalną. Wówczas zbiór punktów dopuszczalnych zadania ma wymiar nie większy niż liczba zer niebazowych.
Przyjmijmy, że tablica sympleks ma t wierszy i n kolumn. Zbiór punktów optymalnych P jest wielościanem w przestrzeni Rn opisanym równaniami z tablicy, nierównościami xi≥0 i funkcją celu. Ale jeżeli punkt q jest optymalny to jego współrzędne odpowiadające kolumnom poprawiającym muszą być równe zero. Tak więc zbiór punktów optymalnych jest przecięciem stożka opisanego nierównościami xi≥0 i podprzestrzeni V opisanej równaniami z tablicy i równaniami xi=0 dla i odpowiadających kolumnom poprawiającym. Równania te są liniowo niezależne więc dimV=n-t+n-t-k=k. Zatem dimP≤dimV=k.
∎
Z twierdzenia 5.4 otrzymujemy bezpośrednio:
Wniosek 5.1
Jeżeli w tablicy sympleks pierwotnie dopuszczalnej wszystkie koszty zredukowane odpowiadające zmiennym niebazowym są >0 to tablica ta opisuje jedyny wierzchołek
optymalny zadania.
Wniosek 5.2
Jeżeli w tablicy sympleks pierwotnie i dualnie dopuszczalnej każda krawędź neutralna opisywana przez tą tablicę jest niezdegenerowana to wymiar zbioru punktów optymalnych jest równy liczbie tych krawędzi. ( Liczbie zer niebazowych w tablicy sympleks.)
Przyjmijmy, że tablica sympleks opisuje wierzchołek p i wychodzące z niego krawędzie neutralne k1,k2,…,ks. Wtedy wymiar zbioru punktów optymalnych d spełnia warunki: d≤dimafp+link1,k2,…,ks=s, gdyż na mocy twierdzenia 5.2 wektory krawędzi są liniowo niezależne. Z drugiej strony d≥s na mocy twierdzenia 5.4.
∎
Wniosek 5.3
Jeżeli tablica sympleks pierwotnie i dualnie dopuszczalna o t wierszach pod kreską ma nad kreską dokładnie t+1 zer, to:
a) jeżeli krawędź neutralna jest niezdegenerowana to zbiorem punktów optymalnych zadania jest ta krawędź,
b) jeżeli krawędź neutralna jest zdegenerowana to tablica ta opisuje jedyny wierzchołek
optymalny zadania.
Ad a) Zbiór punktów optymalnych jest ścianą wielościanu - obszaru dopuszczalnego, zawiera krawędź neutralną opisaną tablicą sympleks i na mocy twierdzenia 5.3 ma wymiar ≤1 więc jest tą krawędzią.
Ad b) Przenumerujmy kolumny tak by tablica sympleks miała postać
[A|b]=[0…00dt+2…di…dnb01…0a1,t+1a1,t+2…a1,i…a1,nb1⋮⋱⋮⋮⋮⋱aj,i⋱⋮⋮0…1at,t+1at,t+2…at,i…at,nbt],
gdzie pierwszych t zmiennych jest bazowych zaś di>0 dla i>t+1.
Niech q=q1,q2,…,qn będzie punktem optymalnym. Porównując wartości funkcji celu w punkcie p opisanym tablicą i w punkcie q otrzymujemy b0=x0p=x0q=-∑i=t+2ndiqi. Więc i>t+1⇒qi=0.
Krawędź opisana t+1-szą kolumną jest zdegenerowana więc istnieje wiersz j taki, że aj,t+1>0 i bj=0. Po wstawieniu do j-tego równania q otrzymujemy qj+aj,t+1qj,t+1=bj=0 i stąd qj,t+1=0. W rezultacie punkt q spełnia ten sam układ równań co punkt p więc q=p.
∎
Przykład 5.5
Jeżeli w tablica sympleks pierwotnie i dualnie dopuszczalna o t wierszach pod kreską ma nad kreską więcej niż t+1 zer, to wymiar zbioru punktów optymalnych może być każdą liczbą między 0 a liczbą zer niebazowych. Zobaczmy to na przykładzie zadania opisanego tablicą:
00000030100001110100001200101-2100001-1110
Wierzchołek optymalny ma współrzędne p1=1,2,0,0,0,0,0. Mamy dodatkowo dwie kolumny opisujące zdegenerowane krawędzie neutralne 5-tą i 6-tą. Pokażemy, że zbiór punktów optymalnych jest trójkątem. Po eliminacji Gaussa -
Jordana otrzymujemy inną tablicę opisującą ten sam wierzchołek.
00000030100001110100001200101-21000110-120
Teraz 6-ta kolumna opisuje krawędź niezdegenerowaną. Dochodzimy nią do wierzchołka p2=0,2,0,1,2,1,0 opisanego tablicą:
0000003010000111010000122010103210110031
Teraz 3-ta kolumna opisuje kolejną krawędź niezdegenerowaną. Dochodzimy nią do wierzchołka p3=0,2,1,0,1,1,0 opisanego tablicą:
000000301000011101000012100-1100110110031
Z tej tablicy możemy dojść do tablicy opisującej wierzchołek p1 wybierając element centralny w wyznaczonym miejscu.
Zadania
Ćwiczenie 5.4
Opisz prosty algorytm metody sympleks na przykładzie zadania:
Max x0=2x1+5x2-3x3 , gdy:
x1+2x2+3x3≤4
x1+3x2+x3≤5
2x1-3x2+7x3≤9
x1≥0, x2≥0, x3≥0
Ćwiczenie 5.5
Opisz wszystkie punkty optymalne zadania:
Maxx0=-4x1+2x2+3x32x1-x2+x3≤2-6x1+3x2-2x3≤2-7x1+4x2-3x3≤2
x1≥0, x2≥0, x3≥0