A. Kasperski, M. Kulej Badania Operacyjne- metoda sympleks 1

Podobne dokumenty
Model zagadnienia programowania liniowego jest w postaci standardowej:

Metoda graficzna może być stosowana w przypadku gdy model zawiera dwie zmienne decyzyjne. Metoda składa się z dwóch kroków (zobacz pierwszy wykład):

ZAGADNIENIE DUALNE Rozważmy zagadnienie liniowe(zagadnienie to nazywamy prymalnym) o postaci kanonicznej:

Metoda simpleks. Gliwice

Teoretyczne podstawy programowania liniowego

Rozdział 1 PROGRAMOWANIE LINIOWE

METODA SYMPLEKS. Maciej Patan. Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski

Programowanie liniowe metoda sympleks

Programowanie liniowe

A. Kasperski, M. Kulej, Badania operacyjne, Wykład 4, Zagadnienie transportowe1

ZAGADNIENIE TRANSPORTOWE(ZT)

Programowanie liniowe metoda sympleks

Programowanie liniowe. Tadeusz Trzaskalik

Rozdział 1 PROGRAMOWANIE LINIOWE

Wprowadzenie do badań operacyjnych - wykład 2 i 3

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

Układy równań i nierówności liniowych

A. Kasperski, M. Kulej Badania Operacyjne- programowanie liniowe 1

Pierwsze kolokwium z Matematyki I 4. listopada 2013 r. J. de Lucas

Programowanie liniowe metoda sympleks

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Metoda Simplex bez użycia tabel simplex 29 kwietnia 2010

5. Rozwiązywanie układów równań liniowych

Po wprowadzeniu zmiennych uzupe lniaj acych otrzymamy równoważny mu problem w postaci kanonicznej:

Metody Numeryczne Wykład 4 Wykład 5. Interpolacja wielomianowa

Uniwersytet Kardynała Stefana Wyszyńskiego Wydział Matematyczno-Przyrodniczy Szkoła Nauk Ścisłych. Piotr Kaczyński. Badania Operacyjne

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Programowanie liniowe

Układy równań liniowych i metody ich rozwiązywania

ZAGADNIENIA PROGRAMOWANIA LINIOWEGO

Wykład 5. Metoda eliminacji Gaussa

3. Macierze i Układy Równań Liniowych

1 Przykładowe klasy zagadnień liniowych

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Laboratorium Metod Optymalizacji

Układy równań liniowych. Ax = b (1)

( 1) ( ) 16 Warunki brzegowe [WB] Funkcja celu [FC] Ograniczenia [O] b i ( 2) ( ) ( ) 14. FC max. Kompletna postać bazowa

Definicja problemu programowania matematycznego

Rozdział 6 PROGRAMOWANIE WYPUKŁE I KWADRATOWE

1 Układy równań liniowych

Programowanie liniowe

Układy równań liniowych

Rozwiązywanie układów równań liniowych

Wykład 14. Elementy algebry macierzy

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

2. Układy równań liniowych

ZAGADNIENIE TRANSPORTOWE

Algorytm simplex i dualność

Treść wykładu. Układy równań i ich macierze. Rząd macierzy. Twierdzenie Kroneckera-Capellego.

Zagadnienie Dualne Zadania Programowania Liniowego. Seminarium Szkoleniowe Edyta Mrówka

(Dantzig G. B. (1963))

Wyk lad 7 Metoda eliminacji Gaussa. Wzory Cramera

Sterowalność liniowych uk ladów sterowania

PROGRAMOWANIE KWADRATOWE

Równania liniowe. Rozdział Przekształcenia liniowe. Niech X oraz Y będą dwiema niepustymi przestrzeniami wektorowymi nad ciałem

Rozdział 2 PROGRAMOWANIE LINIOWE CAŁKOWITOLICZBOWE

METODA ANALITYCZNA Postać klasyczna: z = 5 x 1 + 6x 2 MAX 0,2 x 1 + 0,3x 2 < 18 0,6 x 1 + 0,6x 2 < 48 x 1, x 2 > 0

Notatki do tematu Metody poszukiwania rozwiązań jednokryterialnych problemów decyzyjnych metody dla zagadnień liniowego programowania matematycznego

Matematyka stosowana i metody numeryczne

ALGORYTM SIMPLEX. B.Gładysz Badania operacyjne 2007

wszystkich kombinacji liniowych wektorów układu, nazywa się powłoką liniową uk ładu wektorów

Rozwiązanie Ad 1. Model zadania jest następujący:

3. Wykład Układy równań liniowych.

Wykład z modelowania matematycznego. Zagadnienie transportowe.

Układy równań liniowych

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

UKŁADY RÓWNAŃ LINIOWYCH - Metody dokładne

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

BADANIA OPERACYJNE pytania kontrolne

METODY NUMERYCZNE. wykład. konsultacje: wtorek 10:00-11:30 środa 10:00-11:30. dr inż. Grażyna Kałuża pokój

Baza w jądrze i baza obrazu ( )

, A T = A + B = [a ij + b ij ].

Wykład 4 Udowodnimy teraz, że jeśli U, W są podprzetrzeniami skończenie wymiarowej przestrzeni V to zachodzi wzór: dim(u + W ) = dim U + dim W dim(u

13 Układy równań liniowych

doc. dr Beata Pułska-Turyna Zarządzanie B506 mail: mgr Piotr J. Gadecki Zakład Badań Operacyjnych Zarządzania B 505.

Wykład z modelowania matematycznego. Algorytm sympleks.

1 Macierz odwrotna metoda operacji elementarnych

Niesimpleksowe metody rozwia zywania zadań PL. Seminarium Szkoleniowe Edyta Mrówka

Elementy Modelowania Matematycznego

Układy równań liniowych. Krzysztof Patan

celu przyjmijmy: min x 0 = n t Zadanie transportowe nazywamy zbilansowanym gdy podaż = popyt, czyli n

Zestaw nr 7 Ekstremum funkcji jednej zmiennej. Punkty przegiȩcia wykresu. Asymptoty

ALGEBRA LINIOWA Z ELEMENTAMI GEOMETRII ANALITYCZNEJ. 1. Ciała

Programowanie celowe #1

Programowanie liniowe całkowitoliczbowe. Tadeusz Trzaskalik

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Wybrane elementy badań operacyjnych

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Zagadnienie transportowe (badania operacyjne) Mgr inż. Aleksandra Radziejowska AGH Akademia Górniczo-Hutnicza w Krakowie

= Zapiszemy poniższy układ w postaci macierzy. 8+$+ 2&=4 " 5 3$ 7&=0 5$+7&=4

Metody numeryczne Wykład 4

Układy równań liniowych

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

Programowanie liniowe

UKŁADY RÓWNAŃ LINIOWYCH

FUNKCJA LINIOWA - WYKRES

TOZ -Techniki optymalizacji w zarządzaniu

ZAGADNIENIE TRANSPORTOWE (część 1)

Układy równań. Kinga Kolczyńska - Przybycień 22 marca Układ dwóch równań liniowych z dwiema niewiadomymi

UKŁADY RÓWNAŃ LINIOWYCH -Metody dokładne

Transkrypt:

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