(Dantzig G.. (1963)) Uniwersalna metoda numeryczna dla rozwiązywania zadań PL. Ideą metody est uporządkowany przegląd skończone ilości rozwiązań bazowych układu ograniczeń, które możemy utożsamiać, w przypadku kanoniczne postaci modelu, z punktami wierzchołkowymi zbioru rozwiązań dopuszczalnych zadania PL. Kroki metody polegaą na przechodzeniu z wybranego rozwiązania bazowego do sąsiedniego rozwiązania bazowego, któremu odpowiada przynamnie nie gorsza wartość funkci kryterium. Metoda gwarantue znalezienie rozwiązania optymalnego, eżeli układ ograniczeń nie est sprzeczny (pusty zbiór rozwiązań dopuszczalnych) lub nieograniczony (brak skończonego rozwiązania optymalnego).
1. Postać kanoniczna zadania PL: gdzie max z ( x) Ax x z funkca kryterium, x wektor zmiennych decyzynych, nx1, c wektor parametrów funkci kryterium, nx1, A macierz m x n parametrów lewych stron ograniczeń (LHS), m liczba ograniczeń, b wektor mx1prawych stron ograniczeń (RHS). b 0 c T x Ograniczenia mogą mieć w praktycznych zastosowaniach mieszane kierunki :, lub. Funkca kryterium w klasycznym zapisie est maksymalizowana ale może być również minimalizowana.
2. Transformaca ograniczeń do postaci układu równań liniowych. Wartości prawych stron ograniczeń muszą być nieuemne eżeli w akimś ograniczeniu modelu występue wartość uemna RHS, należy przemnożyć ograniczenie przez (-1) zmieniaąc znaki parametrów oraz kierunek nierówności. W przypadku ograniczenia typu < do LHS dodaemy zmienną swobodną (slack variable). Zmienna swobodna wyraża różnicę między RHS i LHS ograniczenia, np. niewykorzystany zasób surowca, niewykorzystane zdolności produkcyne, itp. Ponieważ zmienna swobodna nie wywiera wpływu na wartość funkci kryterium, przymue się że parametr funkci kryterium odpowiadaący e est równy zero. W przypadku ograniczenia typu > od LHS odemuemy zmienną swobodną (surplus variable). W tym przypadku zmienna swobodna wyraża nadmiar LHS nad RHS ograniczenia. Odpowiadaący zmienne swobodne parametr funkci kryterium, tak ak poprzednio, est równy zero. W tym przypadku do LHS dodaemy także zmienną sztuczną (artificial variable), która nie ma interpretaci w kontekście modelowanego problemu, ale odgrywa ważną rolę w konstrukci startowego rozwiązania bazowego. Parametr funkci kryterium odpowiadaący zmienne sztuczne est równy ( M) w przypadku maksymalizaci oraz M w przypadku minimalizaci, gdzie M reprezentue bardzo dużą dodatnią wartość (metoda kary).
W przypadku ograniczenia typu do LHS dodaemy zmienną sztuczną (artificial variable), która ma za zadanie pomóc w tworzeniu startowego rozwiązania bazowego. Postać tablicowa zadania PL to postać, w które wśród kolumn rozszerzone macierzy parametrów LHS (po dodaniu zmiennych swobodnych i sztucznych) możemy znaleźć podmacierz ednostkową. Kolumny będące wektorami ednostkowymi odpowiadaą zmiennym bazowym. azowe rozwiązanie zadania PL w postaci tablicowe z liczbą zmiennych równą n * oraz z liczbą równań równą m, gdzie n * > m, otrzymue się przyrównuąc do zera n * - m zmiennych (nazywanych zmiennymi niebazowymi ) i rozwiązuąc układ m równań odpowiadaących ograniczeniom zadania względem pozostałych m zmiennych (nazywanych zmiennymi bazowymi).
Postać tablicowa zadania PL x * - wektor zmiennych zadania, włączaąc zmienne swobodne i sztuczne, o wymiarach n * x1. c * - wektor parametrów funkci kryterium, o wymiarach n * x1. A * - rozszerzona macierz parametrów LHS o wymiarach m x n *. * A [ P, P,..., P * ] 1 2 * n P, 1,... n - -ta kolumna macierzy A *. * ) max z ( x c * T przy ograniczeniach * * A x b P x + P x +... + P x * * 1 1 2 2 * x 0 x * n n b
3. Elementarne operace wierszowe. Elementarne operace wierszowe mogą być stosowane do rozwiązywania dowolnego układu równań liniowych. W metodzie simplex stosue się e w następuący sposób: - można pomnożyć dowolny wiersz (równanie) przez liczbę różną od zera (dodatnią lub uemną), - do dowolnego wiersza (równania) można dodać inny wiersz (równanie) przemnożony przez dowolną liczbę różną od zera. Wykonanie wierszowych operaci elementarnych nie zmienia rozwiązania układu równań liniowych.
4. azowe rozwiązania układu równań liniowych - algebra. - macierz będąca układem m liniowo niezależnych kolumn macierzy A * ; macierz bazy. Teoretycznie, można skonstruować n * m różnych macierzy bazy. Rozwiązanie bazowe układu równań wyznacza się ako: x 1 b 0, gdzie x oznacza wektor zawieraący zmienne odpowiadaące kolumnom bazowym, tzw. zmienne bazowe. Zmienne odpowiadaące kolumnom niebazowym są równe zero.
Iteracyna procedura wykorzystana w metodzie simplex przeszukiwania sąsiednich rozwiązań bazowych est algebraicznie realizowana za pomocą wymiany poedynczego wektora w macierzy bazy z wykorzystaniem wierszowych operaci elementarnych. Początkowo, środkowa część tabeli simpleksowe zawiera kolumny macierzy A *. W kolenych iteracach środkowa część tabeli podlega liniowym przekształceniom. Ogólnie, dla dowolnego rozwiązania bazowego środkową część tabeli simpleksowe, oznaczoną przez Y (macierz o wymiarach m x n * ), można wyznaczyć algebraicznie według wzoru: Y 1 A *.
5. Kroki klasyczne metody simplex. Krok 1. Ustalenie startowe bazy klasyczny wybór to macierz ednostkowa zawieraąca kolumny odpowiadaące zmiennym swobodnym i/lub sztucznym (0) I m Krok 2. Wyznaczenie startowego rozwiązania bazowego (0) x (0) 1 ( ) b I b Startowe rozwiązanie bazowe odpowiada wartościom RHS (musza być nieuemne!!!). m b. Krok 3. - Ocena rozwiązania bazowego. Oblicza się elementy wiersza wskaźników optymalności w następuący sposób: c c c z ( c ) T Y ( ) T 1 * c A 1,,n * gdzie symbole Y oraz A * oznaczaą -tą kolumnę odpowiednie macierzy.
Krok 4. Kryterium weścia wektora do bazy. Problem maksymalizaci: Do bazy wedzie ten wektor P k, dla którego zachodzi: k max > 0 { } Problem minimalizaci: Do bazy wedzie ten wektor P k, dla którego zachodzi: k min < 0 { }. Interpretaca: Wybór wektora, który w dane iteraci wchodzi do bazy (i odpowiadaąca mu zmienna stae się zmienną bazową) podyktowany est nawyższym wzrostem/spadkiem wartości funkci kryterium na ednostkę zmienne; c z est różnicą między ednostkowym zyskiem c a kosztem z ; z oznacza spadek wartości funkci kryterium będący wynikiem przyęcia przez zmienną odpowiadaącą -te kolumnie macierzy A * wartości ednostkowe. Kolumna Y k tabeli simpleksowe odpowiadaąca wektorowi P k nazywana est kolumną wyróżnioną (pivot column).
Krok 5. Kryterium usunięcia wektora z bazy Dzielimy wartości zmiennych bazowych x i przez większe od zera elementy wyróżnione kolumny. Ilorazy informuą o maksymalne wielkości zmienne x k aka może być wprowadzona do rozwiązania nie zaburzaąc ograniczenia, któremu odpowiada l-ty wiersz. Wyznaczamy minimalny iloraz, tzw. iloraz wyścia mówi nam on o tym, które z ograniczeń będzie nabardzie restrykcyne gdy zmienna x k zostanie wprowadzona do rozwiązania ako zmienna bazowa : x y l lk x min yik > 0 y Wiersz l-ty nazywany est wierszem wyróżnionym (pivot row) a element wyróżnionym (pivot element). i ik. y lk elementem
Krok 6. Wyznaczenie nowego rozwiązania bazowego (1) Na tym etapie skład nowe macierzy bazy est uż znany. Nowe rozwiązanie bazowe mozna wyznaczyć korzystaac z formuły algebraiczne: (1) x 1 ( 1) ) ( b. (1) 1 W klasyczne metodzie simplex nie wyznacza się macierzy ( ) w sposób bezpośredni ale, wykorzystuąc operace elementarne, w następuący sposób: mnożymy wyróżniony wiersz przez odpowiedni mnożnik taki, aby uzyskać w miescu wyróżnionego element w nowe tablicy simpleksowe wartość równą eden, mnożymy wyróżniony wiersz przez odpowiedni mnożnik (dodatni lub uemny) i dodaemy do każdego z pozostałych wierszy tablicy simpleksowe, w taki sposób aby w nowe tablicy simpleksowe w miescu wyróżnione kolumny uzyskać wartości równe zero, (W efekcie, w miescu wyróżnione kolumny uzyskuemy wektor ednostkowy) wierszowe operace elementarne przeprowadzone nie tylko dla środkowe części tablicy simpleksowe ale także dla wektora b (RHS) dadzą w wyniku w miescu oryginalnych wartości RHS wartości zmiennych bazowych odpowiadaących nowemu rozwiązaniu bazowemu.
Krok 7.- Weryfikaca optymalności Obliczamy wartości wskaźników optymalności dla 1,,n *. Jeżeli wszystkie wartości 0 w przypadku maksymalizaci lub wszystkie wartości 0 w przypadku minimalizaci, dla 1,,n *, to znalezione rozwiązanie bazowe est rozwiązaniem optymalnym. Jeżeli powyższy przypadek nie zachodzi, wróć do kroku 4. 6. Identyfikaca szczególnych przypadków rozwiązań rozwiązanie nieednoznaczne znalezione rozwiązanie bazowe est optymalne, ale liczba wskaźników optymalności równych zero est większa od liczby zmiennych bazowych; wprowadzaąc do bazy wektor odpowiadaący zmienne niebazowe, które odpowiada zerowy wskaźnik optymalności uzyskamy rozwiązanie bazowe alternatywne. Rozwiązań optymalnych niebazowych est nieskończenie wiele (wszystkie kombinace liniowe optymalnych rozwiązań bazowych) zadanie PL est sprzeczne procedura simplex est zakończona ale w bazie optymalne pozostae zmienna sztuczna rozwiązanie nieograniczone - procedura simplex nie może zostać zakończona ponieważ wszystkie elementy wyróżnione kolumny są uemne bądź zerowe.