Model zagadnienia programowania liniowego jest w postaci standardowej:

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

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:

Teoretyczne podstawy programowania liniowego

Metoda simpleks. Gliwice

Rozdział 1 PROGRAMOWANIE LINIOWE

Programowanie liniowe metoda sympleks

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

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

Programowanie liniowe

Programowanie liniowe. Tadeusz Trzaskalik

Programowanie liniowe metoda sympleks

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

Programowanie liniowe metoda sympleks

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

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

Rozdział 1 PROGRAMOWANIE LINIOWE

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

Definicja problemu programowania matematycznego

1 Przykładowe klasy zagadnień liniowych

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

Rozdział 6 PROGRAMOWANIE WYPUKŁE I KWADRATOWE

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

ZAGADNIENIE TRANSPORTOWE(ZT)

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

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

Programowanie liniowe

Układy równań liniowych

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Rozwiązywanie układów równań 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

Wykład 5. Metoda eliminacji Gaussa

ALGORYTM SIMPLEX. B.Gładysz Badania operacyjne 2007

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

Metoda Simplex bez użycia tabel simplex 29 kwietnia 2010

Wykład 14. Elementy algebry macierzy

(Dantzig G. B. (1963))

ZAGADNIENIA PROGRAMOWANIA LINIOWEGO

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

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

Rozdział 2 PROGRAMOWANIE LINIOWE CAŁKOWITOLICZBOWE

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

Algorytm simplex i dualność

BADANIA OPERACYJNE pytania kontrolne

Programowanie liniowe

Laboratorium Metod Optymalizacji

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

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

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

ZAGADNIENIE TRANSPORTOWE

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

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

1 Układy równań liniowych

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

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

Wykład z modelowania matematycznego. Algorytm sympleks.

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

PROGRAMOWANIE KWADRATOWE

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

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

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

Matematyka stosowana i metody numeryczne

2. Układy równań liniowych

1 Macierz odwrotna metoda operacji elementarnych

Badania Operacyjne Ćwiczenia nr 4 (Materiały)

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

Baza w jądrze i baza obrazu ( )

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

Sterowalność liniowych uk ladów sterowania

Programowanie celowe #1

UKŁADY RÓWNAŃ LINIOWYCH

TOZ -Techniki optymalizacji w zarządzaniu

Wyk lad 7 Metoda eliminacji Gaussa. Wzory Cramera

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

13 Układy równań liniowych

Spis treści. Koszalin 2006 [BADANIA OPERACYJNE PROGRAMOWANIE LINIOWE]

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

Wykład z modelowania matematycznego. Zagadnienie transportowe.

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

Układy równań liniowych. Krzysztof Patan

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

Programowanie liniowe

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Firma JCo wytwarza dwa wyroby na dwóch maszynach. Jednostka wyrobu 1 wymaga 2 godzin pracy na maszynie 1 i 1 godziny pracy na maszynie 2.

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.

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

Programowanie liniowe całkowitoliczbowe. Tadeusz Trzaskalik

ZAGADNIENIE TRANSPORTOWE (część 1)

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

12.Rozwiązywanie równań i nierówności liniowych oraz ich układów.

Układy równań liniowych

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

Programowanie liniowe

BADANIA OPERACYJNE Zagadnienie transportowe

Elementy Modelowania Matematycznego

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

Zagadnienie transportowe

Standardowe zadanie programowania liniowego. Gliwice 1

Transkrypt:

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