A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 1 ALGORYTM SYMPLEKS Model liniowy nazywamy modelem w postaci standardowej jeżeli wszystkie ograniczenia s a w postaci równości i wszystkie zmienne decyzyjne s a nieujemne: 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ćwpostacimacierzowejAx = b,x 0.Zakładamy, żerz admacierzy Ajestrówny m,czyliżadnerównanieniewynikazinnych równań. Każdy model można sprowadzić do równoważnej postaci standardowej w nast apuj acy sposób: 1.Ograniczeniepostaci a i1 x 1 + a i2 x 2 + + a in x n b i zastȩpujemydwoma 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ȩpujemydwoma 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ściujemnetowykonujemypodstawienie: x i = u i v i idodajemyograniczenia u i 0, v i 0. Przykład. Sprowadzić do postaci standardowej nastȩpuj acy problem: Przekształcamy ograniczenia 1 i 2: maxz = 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 maxz = 2x 1 +3x 2 x 3 x 1 2x 2 +s 1 = 5 x 2 +3x 3 s 2 = 3 x 1 +x 2 2x 3 = 20 x 1,x 2,s 1,s 2 0 Wykonujemypodstawienie x 3 = u 3 v 3 : maxz = 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
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 2 Rozpatrzmy układ ograniczeń Ax = b. Wybierzmy dokładnie m zmiennych i nadajmy pozostałym n m zmiennym wartości zerowe. Otrzymujemy w ten sposób układ m równań i m 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 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. Przykład. 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ładma4zmiennei2ograniczenia.Wybieramyzmienne x 1 i x 2.Podstawiamy x 3 = x 4 = 0.Otrzymujemyukład: x 1 +x 2 = 3 2x 1 x 2 = 1 Rozwi azuj acukładotrzymujemyrozwi azaniebazowe: x 1 = 4, x 3 2 = 1 2, x 3 3 = 0, x 4 = 0.Tutaj ZB = {x 1,x 2 }, ZN = {x 3,x 4 },baząsąwektorywspółczynników [ ] 1 1 macierzy Aukładurównańprzyzmiennychbazowych x 1,x 2 tj. B =. 2 1 Wybierzmyterazzmiennex 2 ix 3 jakobazowetj.zb [ = {x 2,x] 3 }.Podstawiamy 1 0 x 1 = x 4 = 0,czyli ZN = {x 1,x 4 }.Baząjest B =. Otrzymujemy 1 1 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.Wybieramynastępniezmienne x 1 i x 4.Podstawiamy x 2 = x 3 = 0. Otrzymujemy układ: x 1 +2x 4 = 3 2x 1 +4x 4 = 1 [ ] 1 2 Układtenjestsprzeczny.Zmienne x 1 i x 4 nies awiȩcbazoweab= nie 2 4 jest bazą!
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 3 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. 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. Podstawowe twierdzenie programowania liniowego: Jeżeli problem w postaci standardowej ma rozwi azanie optymalne to ma również rozwi azanie bazowe optymalne. Obserwacja 1.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.
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 4 Idea algorytmu SYMPLEKS: Wyznacz pierwsze BRD Czy aktualne BRD jest optymalne? TAK KONIEC NIE Wyznacz kolejne, niegorsze BRD 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 lub stwierdzenie, że zagadnienie nie ma skończonego rozwiązania optymalnego.(przekształcenie sympleksowe). Przykład. Rozwi azać problem: 40 x 2 D maxz = 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
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 5 Przekształcamy model do postaci standardowej: maxz = 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 pewnej bazy. Pierwsza baza składa się z wektorów macierzy ograniczeń stojącychprzyzmiennychbazowych [ ] [ ] [ ZB ] = {s 1,s 2 }(sątowektoryjednostkowe 1 0 1 0 e 1 = i e 0 2 = ),tj. B =.PierwszeBRD: s 1 0 1 1 = 40, s 2 = 60, x 1 = 0, x 2 = 0.Wartośćfunkcjicelu z = 0.Rozwi azanietoodpowiadawierzchołkowi A. Zapisujemy powyższy model w postai układu równań(zmienne bazowe nie wystȩpuj awfunkcjicelu-układjestrozwi azanywzglȩ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.1) Zapiszmy układ w postaci tabeli: 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 Powyższa tabela nosi nazwȩ tablicy sympleksowej. Ostatni wiersz zawiera współczynikioptymalnościposzczególnychzmiennych.zmienna x 1 maujemnywspółczynnik optymlnoś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 a wartośćmożeprzyj aćzmienna x 1?Zpierwszegoograniczeniaotrzymujemymaksymaln awartośćx 1 = 40/1 = 40azdrugiego x 1 = 60/2 = 30.Wybieramywiȩc mniejsz a wartość 30 co oznacza że bazȩ opuszcza(zostaje wyzerowana) zmienna s 2. s 1 s 2 x 1 x 2 0 s 1 1 0 1 1 40 40/1 = 40 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 rozwi azujemy układ (1.1)wzglȩdemnowychzmiennychbazowych [ ] {s 1,x 1 }(czylinowejbazy B = 1 0 ). Wykonujemy przekształcenia elementarne na wierszach układu(1.1): 1 2
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 6 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 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ściufunkcjicelu z = 120. Rozwi azanie to odpowiada wierzchołkowi B. Rozwiązanie to nie jest optymalneponieważzmienna x 2 maujemnywspółczynnikoptymalnoś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 aztegozbioruwychodzi zmienna s 1.WykonujemyeliminacjȩGaussawzglȩdemelementu 0.5 (terazjuż 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ściufunkcjicelu z = 140.Ponieważwszystkiewspóĺczynnikioptymalnościs anieujemnetorowi azanie to jest optymalne. Rozwi azanie to odpowiada wierzchołkowi C.
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 7 Przykład Nieograniczona funkcja celu. maxz = 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ȩcdobazy.jak a maksymaln awartośćmożeprzyj ać x 2?Zpierwszegoograniczeniawynikaże x 2 możebyćdowolnieduże.podobniezdrugiegoograniczenia.wartośćzmiennej x 2 (i jednocześnie funkcji 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.
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 8 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 +a 2m+1 x m+1 + +a 2n x n = b m x i 0, i = 1,...,n gdziezmienne x 1,...,x m s abazoweib i 0, i = 1,...m. 2. Konstuujemy pocz atkow a tablicȩ sympleksow a: gdzie: 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 c k = m c i a ik c k, k = 1,...,n (1.2) i=1 b 0 = m c i b i (1.3) 3.Jeżeliwszystkiewskaźnikioptymalnościc 1,...,c n s anieujemnetokoniec - 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.zmienna tawchodzidobazy.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. i=1 a ip,
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 9 Przykład. Rozwi azać algorytmem SYMPLEKS nastȩpuj acy problem: maxz = 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: maxz = 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 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 a wzoru (1.2).Naprzykładdlazmiennej x 1 otrzymujemy: 0 3+0 1+0 1 2 = 2. 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 2 1 1 0 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 Poprawność obliczeń można sprawdzić korzystaj ac ze wzoru(1.2). Na przykład współczynnikoptymalnościdla x 2 obliczamy: 0 4+2 ( 1)+0 2 1 = 3. Wartośćfunkcjicelu(b 0 )sprawdzamyobliczaj ac: 0 30 + 2 10 + 0 10 = 20.
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 10 Kolejne iteracje wygl 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 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 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 Ostatniatablicajestoptymalna.Optymalnerozwi azanieodczytujemy: x 3 = 20, s 2 = 10, x 2 = 40, x 1 = 0, s 1 = 0, s 2 = 0.Maksymalnawartośćfunkcjcelu z = 60. Alternatywne rozwi azania optymalne. Jeżeli w końcowej tablicy sympleksowej współczynnik optymalności dla pewnej zmiennej niebazowej wynosi 0 to istnieje alternatywne rozwi azanie optymalne. PrzykładRozpatrzmyostatni atablicȩzprzykładu4:zmiennaniebazowa s 3 ma zerowy współczynnik optymalności. Wprowadzamy t a zmienn a do bazy: 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 s 1 s 2 s 3 x 1 x 2 x 3 1 1 1 x 3 0 1 1 0 1 23 1 3 3 3 3 0 s 3 1 2 2 1 0 0 6 2 3 3 3 3 2 1 x 2 1 0 1 2 1 0 36 2 3 3 3 3 z 1 0 0 1 0 0 60
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 11 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 postaci: x 1 = 0 x 2 = 36 2 3 t+40(1 t) x 3 = 23 1 3 t+20(1 t) t [0,1] Algorytm SYMPLEKS dla problemu minimalizacji różni siȩ tylko tym, że do bazy wchodzi zmienna z dodatnim współczynnikiem optymalności. Przykład. Rozwi azać problem. minz = 3x 1 +x 2 3x 1 +x 2 6 x 1 +2x 2 1 x 1,x 2 0 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 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.Minimalnawartość funkcjicelu z = 6.
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 12 Metoda sztucznej bazy: M-metoda Przykład. Rozwi azać problem: Sprowadzamy do postaci standardowej: maxz = 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 maxz = 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 Układ nie jest w postaci bazowej- nie można wiȩc rozpocz ać algorytmu sympleks. Sprowadzamyukładdopostacibazowejdodaj acsztucznezmiennebazowe a 1 i a 2.Dofunkcjiceludodajemyskładniki Ma 1 i Ma 2,gdzie M jestjak aś bardzo duż a liczb a. Robimy to aby zmienne sztuczne nie wyst apiły w rozwi azaniu (zostały wyzerowane). maxz = 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 optymalności obliczamy za pomoc a wzoru(1.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 a 1 a 2 x 1 x 2 x 3 s 1 1 1 2 x 1 0 1 0 0 7 2 2 1 0 s 1 1 0 1 1 1 1 2 2 z M M +1 0 0 3 0 14
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 13 Ostatniatablicajestoptymalna.Optymalnerozwi azanie: x 1 = 7, s 1 = 1, x 2 = x 3 = 0.Wartośćfunkcjicelu z = 14. Uwagi: 1.Dlaproblemuminimalizacjidofunkcjiceludodajemyskładniki +Ma 1, +Ma 2... 2. Jeżeli w końcowej(optymalnej) tablicy sympleksowej któraś ze zmiennych sztucznych a 1,a 2,...jestbazowaododatniejwartości,towyjściowymodel jest sprzeczny. Przykład. Rozwi azać problem: maxz = 2x 1 +2x 2 6x 1 +4x 2 24 x 1 5 x 1,x 2 0 Postać standardowa: Stosujemy M-metodȩ: maxz = 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 maxz = 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 a 1 a 2 x 1 x 2 s 1 s 2 1 2 1 2 x 1 0 1 0 4 6 3 6 M a 2 1 1 0 2 1 1 5 6 3 6 7 z M + 1 2 0 0 M 6 3 3 22 1 M + 1 M 5M +8 3 6 3 Tablica ta jest optymalna(wszystkie współczynniki optymalności s a nieujemne).zmiennasztuczna a 2 jestbazowaododatniejwartościczylimodel wyjściowy jest sprzeczny.
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 14 Elementy analizy wrażliwości. Przykład. Rozpatrzmy problem z pierwszego wykładu(zapisany w postaci bazowej): maxz = 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.Wjakimzakresiemożesiȩ zmienićcenawyrobuw 1 abyrozwi azanietopozostałooptymalne?rozwi azujemy problem algorytmem sympleks. Ostatnia, 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 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].Czylirozwi azaniepozostanieoptymalnedlacenwyrobu W 1 należ acych do przedziału [2, 4]. 2 1 0 Wjakimzakresiemożesiȩzmienićzapassurowca S1abybaza B = 1 1 0 1 0 1 odpowiadającazmiennymbazowym {x 1,x 2,s 3 }pozostałaoptymalna(czyliaby struktura produkcji była zachowana)? Zmiana prawej strony ograniczeń nie wpływa na współczynniki optymalności. Wynika z tego, że baza B( dla zmiennych bazowych {x 1,x 2,s 3 })pozostanieoptymalnawtedyitylkowtedygdypozosta-
A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 15 nie 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 1 1 0 x 2 = 1 0 1 s 3 St ad: x 1 x 2 s 3 = 2 1 0 1 1 0 1 0 1 1 100+δ 80 40 100+δ 80 40 Odpowiedni a macierz odwrotn a odczytujemy z ostatniej tablicy sympleksowej. Tworz a j a kolumny współczynników dla pierwszego rozwi azania bazowego: St ad: 2 1 0 1 1 0 1 0 1 1 1 0 1 2 0 1 1 1 1 = 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]izapassurowca S1należydoprzedziału [80,120]. 0 0 0 0 0 0