METODA SYMPLEKS Model zagadnienia programowania liniowego jest w postaci standardowej: max(min)z = c 1 x 1 + c 2 x 2 + + c n x n a 11 x 1 + a 12 x 2 + + a 1n x n = b 1... a m1 x 1 + a m2 x 2 + + a mn x n = b m x i 0, i = 1,...,n Zbiórograniczeńmożnazapisaćwpostacimacierzowej Ax = b, x 0. Zakładamy, że rz ad macierzy A jest równy m, czyli żadne równanie nie wynika z innych równań. 1
Każdy model liniowy można sprowadzić do równoważnej postaci standardowej w następujący sposób: 1.Ograniczeniepostaci a i1 x 1 + a i2 x 2 + + a in x n b i zastȩpujemy dwoma ograniczeniami: a i1 x 1 + a i2 x 2 + + a in x n + s i = b i, s i 0. 2.Ograniczeniepostaci a i1 x 1 + a i2 x 2 + + a in x n b i zastȩpujemy dwoma ograniczeniami: a i1 x 1 + a i2 x 2 + + a in x n s i = b i, s i 0. 3.Jeżelizmienna x i możeprzyjmowaćwartościujemneto wykonujemypodstawienie: x i = u i v i idodajemyograniczenia u i 0, v i 0. 2
Przykład 1. Sprowadzić do postaci standardowej problem: max z = 2x 1 + 3x 2 x 3 x 1 2x 2 5 x 2 + 3x 3 3 x 1 + x 2 2x 3 = 20 x 1, x 2 0 Przekształcamyograniczenia1i2orazwykonujemypodstawienie x 3 = u 3 v 3 codajepostaćstandardową: max z = 2x 1 + 3x 2 u 3 + v 3 x 1 2x 2 + s 1 = 5 x 2 + 3u 3 + 3v 3 s 2 = 3 x 1 + x 2 2u 3 + 2v 3 = 20 x 1, x 2, s 1, s 2, u 3, v 3 0 3
Definicja 1. Rozpatrzmy układ ograniczeń Ax = b. Wybierzmy dokładnie m zmiennych i nadajmy pozostałym n m zmiennym wartościzerowe.otrzymujemywtensposóbukład mrównańom niewiadomych. Jednoznaczne rozwi azanie tego układu nazywamy rozwi azaniem bazowym. Wybrane zmienne nazywamy zmiennymi bazowymi i oznaczamy przez ZB natomiast pozostałe zmienne(tj. te, którym przypisano wartości 0) nazywamy zmiennymi niebazowymi i oznaczamy przez N B. Uwaga: Wybrane zmienne s a bazowe wtedy i tylko wtedy, gdy odpowiadaj ace im kolumny w macierzy A s a liniowo niezależne. Zbiór tych kolumn nazywamy baz a i oznaczamy przez B. Przez B będziemy również oznaczać macierz utworzoną z tych kolumn. 4
Przykład 2. Wyznaczyć kilka rozwi azań bazowych układu ograniczeń: x 1 + x 2 + 2x 4 = 3 2x 1 x 2 x 3 + 4x 4 = 1 Układ ma 4 zmienne i 2 ograniczenia. Wybieramy zmienne bazowe ZB = {x 1, x 2 }.Podstawiamy x 3 = x 4 = 0(NB = {x 3, x 4 }). Otrzymujemy układ: x 1 + x 2 = 3 2x 1 x 2 = 1 Rozwi azuj acukładotrzymujemyrozwi azaniebazowe: x 1 = 4 3, x 2 = 1 2 3, x 3 = 0, x 4 = 0.Baząsąwektorywspółczynnikówmacierzy Aukładurównańprzyzmiennychbazowych x 1, x 2 tj. B = 1 1 2 1.. 5
Wybierzmyterazzmienne x 2 i x 3 jakobazowetj. ZB = {x 2, x 3 } podstawiamy x 1 = x 4 = 0(ZN = {x 1, x 4 }).Baząjest B = 1 0. 1 1 Otrzymujemy układ: x 2 = 3 x 2 x 3 = 1 Rozwi azuj acukładotrzymujemyrozwi azaniebazowe: x 1 = 0, x 2 = 3, x 3 = 4, x 4 = 0. Wybierzmyterazzmienne x 1 i x 4 ipodstawmy x 2 = x 3 = 0. Otrzymujemy układ: x 1 + 2x 4 = 3 2x 1 + 4x 4 = 1 6
Układtenjestsprzeczny.Zmienne x 1 i x 4 niemogąbyćzmiennymi bazowymi a macierz B = 1 2 2 4 nie jest bazą(wyznacznik jej jest zerem). 7
Definicja 2. Rozwi azanie bazowe nazywamy rozwi azaniem bazowym dopuszczalnym(brd) jeżeli wszystkie zmienne przyjmuj a w nim wartości nieujemne. Zbiór bazowych rozwi azań dopuszczalnych pokrywa siȩ ze zbiorem punktów wierzchołkowych(ekstremalnych) zbioru rozwi azań dopuszczalnych. Dokładniej między zbiorami wierzchołków zbioru rozwiązań dopuszczalnych a bazowymi rozwiązaniami dopuszczalnymi istnieje odwzorowanie wzajemnie jednoznaczne takie, że każdemu wierzchołkowi odpowiada bazowe rozwiązanie dopuszczalne i na odwrót. Definicja 3. Dwa bazowe rozwiązania dopuszczalne nazywamy sąsiednimi jeśli mają m 1 zmiennych bazowych wspólnych. Geometrycznie odpowiadają im wierzchołki sąsiednie zbioru rozwiązań dopuszczalnych. 8
Twierdzenie 1(Podstawowe twierdzenie programowania liniowego). Jeżeli problem w postaci standardowej ma rozwiązanie optymalne to ma również rozwiązanie bazowe optymalne. Obserwacja 1. Aby wyznaczyć rozwiązanie optymalne zagadnienia programowania liniowego wystarczy inteligentnie przeglądnąć wierzchołki zbioru rozwiązań dopuszczalnych(lub równoważnie bazowe rozwiązania dopuszczalne) i wybrać wierzchołek w którym funkcja celu przyjmuje wartość maksymalną lub minimalną(dla zagadnienia z minimum) W algorytmie sympleks rozpoczyna się przeglądanie od początkowego BRD i iteracyjnie przechodzi do sąsiedniego bazowego rozwiązania dopuszczalnego. Proces ten kończy się, gdy otrzymamy rozwiązanie optymalne lub stwierdzimy, że nie ma rozwiązania skończonego. 9
Idea algorytmu SYMPLEKS: Wyznacz pierwsze BRD Czy aktualne BRD jest optymalne? TAK KONIEC NIE Wyznacz kolejne, niegorsze BRD 10
W algorytmie SYMPLEKS należy określić trzy elementy: 1. Wyznaczenie pierwszego BRD. 2. Stwierdzenie czy aktualne BRD jest optymalne(kryterium optymalności). 3. Przejście do kolejnego, sąsiedniego i niegorszego BRD(iteracja sympleksowa) lub stwierdzenie, że zagadnienie nie ma skończonego rozwiązania optymalnego. 11
Przykład 3. Rozwi azać problem: 40 x 2 D max z = 4x 1 + 3x 2 x 1 + x 2 40 2x 1 + x 2 60 x 1, x 2 0 20 C A B 10 20 30 40 x 1 12
Przekształcamy model do postaci standardowej: max z = 4x 1 + 3x 2 s 1 +x 1 +x 2 = 40 s 2 +2x 1 +x 2 = 60 x 1, x 2, s 1, s 2 0 Powyższy model jest w tzw. postaci bazowej- układ ograniczeń jest rozwi azany wzglȩdem bazy składającej się z wektorów macierzy ograniczeństojącychprzyzmiennychbazowych ZB = {s 1, s 2 }(sąto wektoryjednostkowe e 1 = 1 0 ie 2 = 1 0 ),tj. B = 1 0 0 1 PierwszeBRD: s 1 = 40, s 2 = 60, x 1 = 0, x 2 = 0, z = 0.Rozwi azanie to odpowiada wierzchołkowi A.. 13
Zapisujemy powyższy model w postaci układu równań(zmienne bazowe nie wystȩpuj a w funkcji celu- układ jest rozwi azany wzglȩdem s 1, s 2 i z): z 4x 1 3x 2 = 0 s 1 +x 1 +x 2 = 40 s 2 +2x 1 +x 2 = 60 x 1, x 2, s 1, s 2 0 (1) Zapis układu równań w postaci tablicy sympleksowej: s 1 s 2 x 1 x 2 0 s 1 1 0 1 1 40 0 s 2 0 1 2 1 60 z 0 0 4 3 0 14
Ostatni wiersz zawiera współczyniki optymalności poszczególnych zmiennych.zmienna x 1 maujemnywspółczynnikoptymlności. Wprowadzaj ac t a zmienn a do bazy(czyli nadaj ac jej wartość wieȩksz a od 0) możemy powiȩkszyć wartość funkcji celu z. Jak a maksymaln awartośćmożeprzyj aćzmienna x 1?Zpierwszego ograniczeniaotrzymujemymaksymaln awartośćx 1 = 40/1 = 40az drugiego x 1 = 60/2 = 30.Wybieramywiȩcmniejsz awartość30co oznaczażebazȩopuszcza(zostajewyzerowana)zmienna s 2. s 1 s 2 x 1 x 2 0 s 1 1 0 1 1 40 40/1 = 10 0 s 2 0 1 2 1 60 60/2 = 30 z 0 0 4 3 0 Wykonujemy eliminacjȩ Gaussa wzglȩdem elementu 2 czyli 15
rozwi azujemy układ(1) wzglȩdem nowych zmiennych bazowych {s 1, x 1 }(czylinowejbazy B = 1 0 ). Wykonujemy 1 2 przekształcenia elementarne na wierszach układu(1): 1. Dzielimy trzeci wiersz przez 2. z 4x 1 3x 2 = 0 s 1 +x 1 +x 2 = 40 1 2 s 2 +x 1 + 1 2 x 2 = 30 2. Od drugiego wiersza odejmujemy trzeci wiersz podzielony przez 2. z 4x 1 3x 2 = 0 s 1 1 2 s 2 + 1 2 x 2 = 10 1 2 s 2 +x 1 + 1 2 x 2 = 30 16
3. Do pierwszego wiersza dodajemy trzeci wiersz pomnożony przez 2. z +2s 2 1x 2 = 120 s 1 0.5s 2 +0.5x 2 = 10 0.5s 2 +x 1 +0.5x 2 = 30 Obliczenia te wygodnie jest wykonywać bezpośrednio na tablicy sympleksowej. Otrzymujemy drug a tablicȩ: s 1 s 2 x 1 x 2 0 s 1 1 0.5 0 0.5 10 4 x 1 0 0.5 1 0.5 30 z 0 2 0 1 120 OdczytujemyBRD: s 1 = 10, x 1 = 30, s 2 = 0, x 2 = 0owartościu funkcji celu z = 120. Rozwi azanie to odpowiada wierzchołkowi B. 17
Rozwiązanietoniejestoptymalneponieważzmienna x 2 maujemny współczynnik optymalności. s 1 s 2 x 1 x 2 0 s 1 1 0.5 0 0.5 10 10/0.5 = 20 4 x 1 0 0.5 1 0.5 30 30/0.5 = 60 z 0 2 0 1 120 Dozbioruzmiennychbazowychwchodzizmienna x 2 aztegozbioru wychodzizmienna s 1.WykonujemyeliminacjȩGaussawzglȩdem 18
elementu 0.5 (teraz już bezpośrednio na tablicy sympleksowej). s 1 s 2 x 1 x 2 3 x 2 2 1 0 1 20 4 x 1 1 1 1 0 20 z 2 1 0 0 140 OdczytujemyBRD: x 2 = 20, x 1 = 20, s 1 = 0, s 2 = 0iwartościu funkcjicelu z = 140.Ponieważwszystkiewspóĺczynnikioptymalności s a nieujemne to rowi azanie to jest optymalne. Rozwi azanie to odpowiada wierzchołkowi C. 19
Przykład 4. Nieograniczona funkcja celu. max z = 2x 1 + x 2 + x 3 s 1 +3x 1 x 2 = 60 s 2 +x 1 2x 2 + 2x 3 = 10 x 1, x 2, x 3, s 1, s 2 0 Tablica sympleksowa ma nastȩpuj ac a postać: s 1 s 2 x 1 x 2 x 3 0 s 1 1 0 3 1 0 60 0 s 2 0 1 1 2 2 10 z 0 0 2 1 1 0 Zmienna x 2 maujemnywspółczynnikoptymalności.wchodziwiȩcdo bazy.jak amaksymaln awartośćmożeprzyj ać x 2?Zpierwszego 20
ograniczeniawynikaże x 2 możebyćdowolnieduże.podobniez drugiegoograniczenia.wartośćzmiennej x 2 (ijednocześniefunkcji celu) może być dowolnie duża. Uwaga: Jeżeli dla pewnej zmiennej wskaźnik optymalności jest ujemy i wszystkie współczynniki dla tej zmiennej s a niedodatnie to funkcja celu jest nieograniczona. 21
ALGORYTM SYMPLEKS 1. Na wejściu podajemy model w postaci bazowej: max(min)z = c 1 x 1 + c 2 x 2 + + c n x n x 1 +a 1m+1 x m+1 + + a 1n x n = b 1 x 2 +a 2m+1 x m+1 + + a 2n x n = b 2... x m x i 0, i = 1,...,n +a 2m+1 x m+1 + + a 2n x n = b m gdziezmienne x 1,...,x m s abazoweib i 0, i = 1,...m. 22
2. Konstuujemy pocz atkow a tablicȩ sympleksow a: x 1 x 2... x m x m+1... x n c 1 x 1 1 0... 0 a 1m+1... a 1n b 1 c 2 x 2 0 1... 0 a 2m+1... a 2n b 2.............................., c m x m 0 0... 1 a mm+1... a mn b m z 0 0... 0 c m+1... c n b 0 gdzie: c k = m c i a ik c k, k = 1,...,n (2) i=1 m b 0 = c i b i (3) i=1 23
3.Jeżeliwszystkiewskaźnikioptymalności c 1,...,c n s anieujemne to KONIEC- aktualna baza jest optymalna. W przeciwnym wypadku przejdź do 4. 4. Jeżeli dla pewnej zmiennej wskaźnik optymalności jest ujemny i wszystkie współczynniki w kolumnie odpowiadaj acej tej zmiennej s a niedodatnie to KONIEC- funkcja celu jest nieograniczona. W przeciwnym wypadku przejdź do 5. 5.Wybierzzmienn azujemnymwskaźnikiemoptymalnościnp: x p. Zmiennatawchodzidobazy.Znajdźzmienn abazow a x r tak aże: { } b r bi = min a rp a ip >0 Zmienna x r wychodzizbazy. 6.WykonajeliminacjȩGaussawzglȩdemelementu a rp.wróćdo3. a ip 24
Przykład. Rozwi azać algorytmem SYMPLEKS nastȩpuj acy problem: max z = 2x 1 + x 2 + x 3 3x 1 + x 2 + x 3 60 x 1 x 2 + 2x 3 10 x 1 + x 2 x 3 20 x 1, x 2, x 3 0 Przekształcamy do postaci standardowej i bazowej: max z = 2x 1 + x 2 + x 3 s 1 +3x 1 + x 2 + x 3 = 60 s 2 +x 1 x 2 + 2x 3 = 10 s 3 +x 1 + x 2 x 3 = 20 x 1, x 2, x 3, s 1, s 2, s 3 0 25
Konstruujemy pierwsz a tablicȩ sympleksow a. s 1 s 2 s 3 x 1 x 2 x 3 0 s 1 1 0 0 3 1 1 60 0 s 2 0 1 0 1 1 2 10 0 s 3 0 0 1 1 1 1 20 z 0 0 0 2 1 1 0 Uwaga: Współczynniki optymalności wygodnie jest obliczać za pomoc awzoru(2).naprzykładdlazmiennej x 1 otrzymujemy: 0 3 + 0 1 + 0 1 2 = 2. 26
s 1 s 2 s 3 x 1 x 2 x 3 0 s 1 1 0 0 3 1 1 60 60/3 = 20 0 s 2 0 1 0 1 1 2 10 10/1 = 10 0 s 3 0 0 1 1 1 1 20 20/1 = 20 z 0 0 0 2 1 1 0 Wykonujemy eliminacjȩ Gaussa wzglȩdem 1: s 1 s 2 s 3 x 1 x 2 x 3 0 s 1 1 3 0 0 4 5 30 2 x 1 0 1 0 1 1 2 10 0 s 3 0 1 1 0 2 3 10 z 0 2 0 0 3 3 20 27
Poprawność obliczeń można sprawdzić korzystaj ac ze wzoru(2). Na przykładwspółczynnikoptymalnościdla x 2 obliczamy: 0 4 + 2 ( 1) + 0 2 1 = 3.Wartośćfunkcjicelu(z)sprawdzamy obliczaj ac: 0 30 + 2 10 + 0 10 = 20.Kolejneiteracjewygl adaj a nastcepuj aco: s 1 s 2 s 3 x 1 x 2 x 3 0 s 1 1 3 0 0 4 5 30 30/4 = 7.5 2 x 1 0 1 0 1 1 2 10 0 s 3 0 1 1 0 2 3 10 10/2 = 5 z 0 2 0 0 3 3 20 28
s 1 s 2 s 3 x 1 x 2 x 3 0 s 1 1 1 2 0 0 1 10 10/1 = 10 2 x 1 0 0.5 0.5 1 0 0.5 15 15/0.5 = 30 1 x 2 0 0.5 0.5 0 1 1.5 5 z 0 0.5 0.5 0 0 1.5 35 s 1 s 2 s 3 x 1 x 2 x 3 1 x 3 1 1 2 0 0 1 10 2 x 1 0.5 1 1.5 1 0 0 10 10/1 = 10 1 x 2 1.5 2 2.5 0 1 0 20 z 1.5 1 1.5 0 0 0 50 29
s 1 s 2 s 3 x 1 x 2 x 3 1 x 3 0.5 0 0.5 1 0 1 20 0 s 2 0.5 1 1.5 1 0 0 10 1 x 2 0.5 0 0.5 2 1 0 40 z 1 0 0 1 0 0 60 Ostatnia tablica jest optymalna. Optymalne rozwi azanie odczytujemy: x 3 = 20, s 2 = 10, x 2 = 40, x 1 = 0, s 1 = 0, s 2 = 0. Maksymalna wartość funkcj celu z = 60. 30
Alternatywne rozwi azania optymalne. Jeżeli w końcowej tablicy sympleksowej współczynnik optymalności dla pewnej zmiennej niebazowej wynosi 0 to istnieją alternatywne rozwi azania optymalne. Przykład 5. Rozpatrzmy ostatnią tablicȩ z przykładu 4. Zmienna niebazowa s 3 mazerowywspółczynnikoptymalności.wprowadzamy tę zmienną do bazy wykonując jedną iterację sympleksową: s 1 s 2 s 3 x 1 x 2 x 3 1 x 3 0.5 0 0.5 1 0 1 20 0 s 2 0.5 1 1.5 1 0 0 10 10/1.5 = 6 2 3 1 x 2 0.5 0 0.5 2 1 0 40 40/0.5 = 80 z 1 0 0 1 0 0 60 31
s 1 s 2 s 3 x 1 x 2 x 3 1 1 1 x 3 3 3 0 1 1 3 0 1 23 1 3 0 s 3 1 2 2 3 3 1 3 0 0 6 2 3 2 1 x 2 3 1 3 0 1 2 3 1 0 36 2 3 z 1 0 0 1 0 0 60 Otrzymujemyalternatywnerozwi azanieoptymalne: x 3 = 23 1 3, s 3 = 6 2 3, x 2 = 36 2 3, x 1 = 0, s 1 = 0, s 2 = 0.Wartośćfunkcjicelu z = 60. Uwaga: Problem posiada nieskończenie wiele rozwi azań optymalnych 32
postaci: x 1 = 0 x 2 = 36 2 3t + 40(1 t) x 3 = 23 1 3t + 20(1 t) t [0, 1] 33
Algorytm SYMPLEKS dla problemu minimalizacji różni siȩ tylko tym, że do bazy wchodzi zmienna z dodatnim współczynnikiem optymalności. Przykład 6. Rozwi azać problem. minz = 3x 1 + x 2 3x 1 + x 2 6 x 1 + 2x 2 1 x 1, x 2 0 34
Sprowadzamy do postaci standardowej i bazowej: minz = 3x 1 + x 2 s 1 +3x 1 + x 2 = 6 s 2 x 1 + 2x 2 = 1 x 1, x 2 0 s 1 s 2 x 1 x 2 0 s 1 1 0 3 1 6 6/3 = 2 0 s 2 0 1 1 2 1 z 0 0 3 1 0 35
s 1 s 2 x 1 x 2 3 x 1 1/3 0 1 1/3 2 0 s 2 1/3 1 0 7/3 3 z 1 0 0 2 6 Tablica ta jest optymalna(wszystkie współczynniki optymalności s a niedodatnie).optymalnerozwi azanie: x 1 = 2, x 2 = 0, s 1 = 0, s 2 = 3. Minimalna wartość funkcji celu z = 6. 36
Metoda sztucznej bazy: M-metoda Przykład. Rozwi azać problem: max z = 2x 1 + x 2 3x 3 x 1 + x 2 + x 3 6 2x 1 + x 2 = 14 x 1, x 2, x 3 0 Sprowadzamy do postaci standardowej: max z = 2x 1 + x 2 3x 3 x 1 + x 2 + x 3 s 1 = 6 2x 1 + x 2 = 14 x 1, x 2, x 3, s 1 0 37
Układniejestwpostacibazowej-niemożnawiȩcrozpocz ać algorytmu sympleks. Sprowadzamy układ do postaci bazowej dodaj ac sztucznezmiennebazowe a 1 i a 2.Dofunkcjiceludodajemyskładniki Ma 1 i Ma 2,gdzie Mjestjak aśbardzoduż aliczb a.robimytoaby zmienne sztuczne nie wyst apiły w rozwi azaniu(zostały wyzerowane). max z = 2x 1 + x 2 3x 3 Ma 1 Ma 2 a 1 +x 1 + x 2 + x 3 s 1 = 6 a 2 +2x 1 + x 2 = 14 x 1, x 2, x 3, s 1, a 1, a 2 0 Konstruujemy pierwsz a tabliȩ sympleksow a(współczynniki 38
optymalności obliczamy za pomoc a wzoru(2)). a 1 a 2 x 1 x 2 x 3 s 1 M a 1 1 0 1 1 1 1 6 6/1 = 6 M a 2 0 1 2 1 0 0 14 14/2 = 7 z 0 0 3M 2 2M 1 M + 3 M 20M a 1 a 2 x 1 x 2 x 3 s 1 2 x 1 1 0 1 1 1 1 6 M a 2 2 1 0 1 2 2 2 2/2 = 1 z 3M + 2 0 0 M + 1 2M 1 2M 2 2M + 12 39
a 1 a 2 x 1 x 2 x 3 s 1 2 x 1 0 1 2 1 1 2 0 0 7 0 s 1 1 1 2 0 1 2 1 1 1 z M M + 1 0 0 3 0 14 Ostatniatablicajestoptymalna.Optymalnerozwi azanie: x 1 = 7, s 1 = 1, x 2 = x 3 = 0.Wartośćfunkcjicelu z = 14. Uwagi: 1. Dla problemu minimalizacji do funkcji celu dodajemy składniki +Ma 1, +Ma 2... 2. Jeżeli w końcowej(optymalnej) tablicy sympleksowej któraś ze zmiennychsztucznych a 1, a 2,...jestbazowaododatniej wartości, to wyjściowy model jest sprzeczny. 40
Przykład. Rozwi azać problem: max z = 2x 1 + 2x 2 6x 1 + 4x 2 24 x 1 5 x 1, x 2 0 Postać standardowa: max z = 2x 1 + 2x 2 6x 1 + 4x 2 + s 1 = 24 x 1 s 2 = 5 x 1, x 2, s 1, s 2 0 41
Stosujemy M-metodȩ: max z = 2x 1 + 2x 2 Ma 1 Ma 2 a 1 +6x 1 + 4x 2 + s 1 = 24 a 2 +x 1 s 2 = 5 x 1, x 2, s 1, s 2 0 a 1 a 2 x 1 x 2 s 1 s 2 M a 1 1 0 6 4 1 0 24 24/6 = 4 M a 2 0 1 1 0 0 1 5 5/1 = 5 z 0 0 7M 2 4M 2 M M 29M 42
a 1 a 2 x 1 x 2 s 1 s 2 1 2 1 2 x 1 6 0 1 3 6 0 4 M a 2 1 6 1 0 2 3 1 6 1 5 z 7 6 M + 1 3 0 0 2 3 M 22 3 1 6 M + 1 3 M 5M + 8 Tablica ta jest optymalna(wszystkie współczynniki optymalności s anieujemne).zmiennasztuczna a 2 jestbazowaododatniej wartości czyli model wyjściowy jest sprzeczny. 43
Elementy analizy wrażliwości. Przykład. Rozpatrzmy problem z pierwszego wykładu(zapisany w postaci bazowej): max z = 3x 1 + 2x 2 [Maksymalizacjazysku] s 1 +2x 1 + x 2 = 100 [Zużyciesurowca S 1 ] s 2 +x 1 + x 2 = 80 [Zużyciesurowca S 2 ] s 3 +x 1 = 40 [Popytna W 1 ] x 1, x 2, s 1, s 2, s 3 0 Optymalnymrozwi azaniemjest x 1 = 20, x 2 = 60.Wjakimzakresie możesiȩzmienićcenawyrobu W 1 abyrozwi azanietopozostało optymalne? Rozwi azujemy problem algorytmem sympleks. Ostatnia, 44
optymalna tablica ma postać: s 1 s 2 s 3 x 1 x 2 3 x 1 1-1 0 1 0 20 2 x 2-1 2 0 0 1 60 0 s 3-1 1 1 0 0 20 z 1 1 0 0 0 180 Załóżmy,żezyskzW1wynosi 3 + δ.mamywówczas: s 1 s 2 s 3 x 1 x 2 3 + δ x 1 1 1 0 1 0 20 2 x 2 1 2 0 0 1 60 0 s 3 1 1 1 0 0 20 z 1 + δ δ + 1 0 0 0 180 45
Rozwi azanie pozostanie optymalne wtedy i tylko wtedy gdy wszystkie współczynniki optymalności bȩd a nieujemne, czyli: 1 + δ 0 δ + 1 0 St ad δ [ 1, 1]. Czyli rozwi azanie pozostanie optymalne dla cen wyrobu W 1 należ acychdoprzedziału [2, 4]. W jakim zakresie może siȩ zmienić zapas surowca S1 aby baza 2 1 0 B = 1 1 0 odpowiadającazmiennymbazowym {x 1, x 2, s 3 } 1 0 1 pozostała optymalna(czyli aby struktura produkcji była zachowana)? Zmiana prawej strony ograniczeń nie wpływa na 46
współczynniki optymalności. Wynika z tego, że baza B( dla zmiennychbazowych {x 1, x 2, s 3 })pozostanieoptymalnawtedyi tylko wtedy gdy pozostanie dopuszczalna. St ad szukamy wartości δ dla których poniższy układ jest niesprzeczny: 2x 1 + x 2 = 100 + δ x 1 + x 2 = 80 s 3 + x 1 = 40 x 1, x 2, s 1, s 2, s 3 0 Zapiszmy ten układ w postaci macierzowej: 2 1 0 x 1 100 + δ 1 1 0 x 2 = 80 1 0 1 40 s 3 47
St ad: x 1 x 2 = 2 1 0 1 1 0 1 100 + δ 80 0 0 s 3 1 0 1 40 0 Odpowiedni a macierz odwrotn a odczytujemy z ostatniej tablicy sympleksowej. Tworz a j a kolumny współczynników dla pierwszego rozwi azania bazowego: 2 1 0 1 1 0 1 0 1 1 = 1 1 0 1 2 0 1 1 1 48
St ad: 1 1 0 1 2 0 1 1 1 100 + δ 80 40 Wykonuj ac mnożenie macierzy otrzymujemy układ nierówności: 20 + δ 0 100 δ 0 20 δ 0 czyli δ [-20,20] i zapas surowca S1 należy do przedziału[80,120]. 0 0 0 49