Metoda simpleks Simpleks jest uniwersalną metodą rozwiązywania zadań programowania liniowego. Jest to metoda iteracyjnego poprawiania wstępnego rozwiązania.

Slides:



Advertisements
Podobne prezentacje
OBLICZENIA NUMERYCZNE
Advertisements

Modelowanie i symulacja
Automaty asynchroniczne
Metody badania stabilności Lapunowa
Metody numeryczne część 1. Rozwiązywanie układów równań liniowych.
Równanie różniczkowe zupełne i równania do niego sprowadzalne
Wybrane zastosowania programowania liniowego
Programowanie matematyczne
Metody rozwiązywania układów równań liniowych
Wzory Cramera a Macierze
Badania operacyjne. Wykład 1
Badania operacyjne. Wykład 2
Wykład no 11.
Liniowość - kryterium Kryterium Znane jako zasada superpozycji
Programowanie liniowe całkowitoliczbowe
ZLICZANIE cz. II.
Liniowe modele decyzyjne – rozwiązania i analiza post-optymalizacyjna
Wykład 2: Upraszczanie, optymalizacja i implikacja
1.
Metoda graficzna opracowanie na podstawie „Metody wspomagające podejmowanie decyzji w zarządzaniu” D. Witkowska, Menadżer Łódź Zadania, w których.
Metoda simpleks opracowanie na podstawie „Metody wspomagające podejmowanie decyzji w zarządzaniu” D. Witkowska, Menadżer Łódź Simpleks jest uniwersalną.
Problem transportowy opracowanie na podstawie „Metody wspomagające podejmowanie decyzji w zarządzaniu” D. Witkowska, Menadżer Łódź 2000.
Metoda graficzna opracowanie na podstawie Metody wspomagające podejmowanie decyzji w zarządzaniu D. Witkowska, Menadżer Łódź Zadania, w których występują
Zadanie pierwotne Zadanie dualne Max f. celu Współczynniki f. celu Warunki „=„ Warunki „=„ Macierz parametrów Min f. celu.
Metody matematyczne w Inżynierii Chemicznej
Matematyka.
Matematyczne techniki zarządzania - 211
Teoria sterowania 2012/2013Sterowanie – użycie obserwatorów pełnych II Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 1 Sterowanie.
Metody Lapunowa badania stabilności
Paweł Górczyński Badania operacyjne Paweł Górczyński
Optymalizacja liniowa
Paweł Górczyński Badania operacyjne Paweł Górczyński
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
II Zadanie programowania liniowego PL
dla klas gimnazjalnych
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
Zakładamy a priori istnienie rozwiązania α układu równań.
Modelowanie matematyczne jako podstawa obliczeń naukowo-technicznych:
II. Matematyczne podstawy MK
Dana jest sieć dystrybucji wody w postaci: Ø      m- węzłów,
Sterowanie – metody alokacji biegunów II
Algebra Przestrzenie liniowe.
Ile rozwiązań może mieć układ równań?
Źródła błędów w obliczeniach numerycznych
MS Excel - wspomaganie decyzji
II Zadanie programowania liniowego PL
D. Ciołek BADANIA OPERACYJNE – wykład 2
Materiały pochodzą z Platformy Edukacyjnej Portalu
Metody numeryczne szukanie pierwiastka metodą bisekcji
Rozwiązywanie układów równań liniowych różnymi metodami
Metody matematyczne w Inżynierii Chemicznej
Zagadnienie i algorytm transportowy
Metody rozwiązywania układów równań liniowych
D. Ciołek BADANIA OPERACYJNE – wykład 2
Katedra Inżynierii Sterowania Komputerowe systemy sterowania i wspomagania decyzji 2015/2016 © Kazimierz Duzinkiewicz, dr hab. inż. 1 Dekompozycyjne metody.
Treść dzisiejszego wykładu l Metoda kar. l Podsumowanie przekształcania zadań programowania liniowego do postaci tabelarycznej. l Specjalne przypadki –sprzeczność,
© Prof. Antoni Kozioł, Wydział Chemiczny Politechniki Wrocławskiej MATEMATYCZNE MODELOWANIE PROCESÓW BIOTECHNOLOGICZNYCH Temat – 5 Modelowanie różniczkowe.
Modele nieliniowe sprowadzane do liniowych
O ODPORNOŚCI KONWENCJONALNEGO OBSERWATORA LUENBERGERA ZREDUKOWANEGO RZĘDU Ryszard Gessing Instytut Automatyki Politechnika Śląska.
Treść dzisiejszego wykładu l Postać standardowa zadania PL. l Zmienne dodatkowe w zadaniu PL. l Metoda simpleks –wymagania metody simpleks, –tablica simpleksowa.
Treść dzisiejszego wykładu l Analiza wrażliwości –zmiana wartości współczynników funkcji celu, –zmiana wartości prawych stron ograniczeń. l Podejścia do.
Rozwiązywanie układów równań Radosław Hołówko Konsultant: Agnieszka Pożyczka.
 Zdefiniowanie zmiennych  Programowanie liniowe jest działem programowania matematycznego obejmującym te zagadnienia, w których wszystkie związki mają.
Rozpatrzmy następujące zadanie programowania liniowego:
Elementy cyfrowe i układy logiczne
Metody optymalizacji Wykład /2016
Metody optymalizacji Materiał wykładowy /2017
Metody optymalizacji – metody badań operacyjnych
Metody matematyczne w Inżynierii Chemicznej
Jednorównaniowy model regresji liniowej
Zapis prezentacji:

Metoda simpleks Simpleks jest uniwersalną metodą rozwiązywania zadań programowania liniowego. Jest to metoda iteracyjnego poprawiania wstępnego rozwiązania

Model matematyczny I Zmienne decyzyjne : x1 - liczba emisji reklamy radiowej; x2 - liczba emisji reklamy telewizyjnej. funkcja celu: f(x)=3x1 + 6x2  min (koszty zleceniodawcy w tys. zł) warunki ograniczające: 2 x1 + x2  6 warunek na koszty ponoszone przez firmę "Press", x1 + x2  2 warunek zleceniodawcy na emisję reklam, x2  1 dolne ograniczenie uwzględniające żądanie zleceniodawcy, x2  4 górne ograniczenie dotyczące warunków nałożonych przez TV, warunki brzegowe: x1  0, x2  0, x1C, x2 C.

Zmienne swobodne Przekształcamy model tak, aby można było zastosować algorytm simpleks. Przekształcamy warunki ograniczające w równania dopisując do nich nieujemne zmienne, tzw. zmienne swobodne w następujący sposób: do każdego warunku postaci “” dodaje się zmienną swobodną z parametrem równym jeden do każdego warunku postaci “” dodaje się zmienną swobodną ze współczynnikiem -1 Zmienne swobodne posiadają interpretację ekonomiczną wynikającą z informacji zawartej w warunkach ograniczających, do których zostały wprowadzone. Dodane zmienne wchodzą również do nowej funkcji kryterium, gdzie parametry przy zmiennych swobodnych przyjmują wartość zero

Sprowadzamy warunki ograniczające do równości Zmienne decyzyjne : x1 ;x2 s1,s2,s3,s4 funkcja celu: f(x)=3x1 + 6x2 + 0s1 +0s2 +0s3 +0s4min warunki ograniczające: 2x1 + x2 + s1 = 6 x1 + x2 - s2 = 2 x2 - s3 =1 x2 + s4 = 4 warunki brzegowe: x10, x20, s10, s20, s30, s40, x1,x2,s1,s2,s3,s4C .

Tablica simpleksowa cB B 3 6 x1 x2 s1 s2 s3 s4 2 1 -1

Zmienne sztuczne Jeżeli z macierzy współczynników tak powstałych równań nie da się wyodrębnić macierzy jednostkowej, to do warunków, które od początku były warunkami postaci równania oraz do warunków, które pierwotnie były postaci “” dopisuje się tzw. zmienne sztuczne .

Zmienne sztuczne c.d. Dodane zmienne wchodzą również do nowej funkcji kryterium, gdzie parametry przy zmiennych swobodnych przyjmują wartość zero, natomiast parametry przy zmiennych sztucznych zależą od optimum funkcji celu: w zadaniach z funkcją celu dążącą do maximum jest to -M, w zadaniach z funkcją celu dążącą do minimum jest to +M, gdzie M jest dowolnie dużą liczbą rzeczywistą dodatnią (M+).

Tablica simpleksowa

Po powyższych przekształceniach otrzymujemy model postaci: f(x)=3x1 + 6x2 + 0s1 +0s2 +0s3 +0s4 + Mt1 + Mt2 min 2x1 + x2 + s1 = 6 x1 + x2 - s2 + t2= 2 x2 - s3 + t3 =1 x2 + s4 = 4 x1  0, x2  0, s1  0, s2  0, s3  0, s4  0, t2 = 0, t3 = 0. x1, x2, s1, s2, s3, s4, t2, t3C

Optymalność rozwiązania W celu sprawdzenia optymalności otrzymanego rozwiązania obliczamy współczynniki zj i j wg wzoru: Wartość współczynnika optymalności j określa jednostkową zmianę wartości funkcji kryterium, jeżeli do bazy wprowadzimy daną zmienną (dla wszystkich zmiennych bazowych j=0).

Jeżeli wartość j jest ujemna, to oznacza, że wprowadzenie danej zmiennej do bazy spowoduje spadek wartości funkcji celu. Zatem wartość funkcji kryterium można uzależnić od jej wartości w poprzedniej iteracji:

Rozwiązanie optymalne Rozwiązanie jest optymalne, jeżeli nie występują zmienne niebazowe, których wprowadzenie do bazy byłoby pożądane: w zadaniu z funkcją celu dążącą do minimum takie zmienne, które powodowałyby spadek wartości tej funkcji (j<0), a w przypadku zadań, w których funkcja celu dąży do maksimum takie zmienne, które powodowałyby jej wzrost (j>0).

Rozwiązanie optymalne

Tablica simpleksowa (min) Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j<0

Kryterium wejścia do bazy W następnym kroku algorytmu wprowadzamy do bazy tę zmienną, która spowoduje najbardziej korzystne efekty: ma największe dodatnie wartości j w zadaniach na max najmniejsze ujemne wartości j w zadaniach z funkcją celu dążącą do minimum.

Tablica simpleksowa (min) Do bazy wejdzie x2 Najmniejsza ujemna

Kryterium wyjścia z bazy Z uwagi na to, że liczba zmiennych w bazie musi być stała (i równa liczbie warunków ograniczających), należy wyznaczyć zmienną, która bazę opuści. Obliczamy w tym celu wskaźniki Q , wg wzoru: Współczynniki  wyznacza się wyłącznie dla >0 w celu uzyskania w kolejnej iteracji rozwiązania dopuszczalnego (spełniającego warunki brzegowe). Zmienną, która opuszcza bazę jest ta, dla której  ma najmniejszą wartość.

Tablica simpleksowa (min) W kolejnej iteracji zamiast zmiennej t3 pojawi się x2 Tablica simpleksowa (min) Najmniejsza wartość

Tablica simpleksowa (min)

Tablica simpleksowa (min) Przepisany z poprzedniej iteracji

Tablica simpleksowa (min) Od elementów wiersza pierwszego odejmujemy elementy wyróżnionego wiersza trzeciego

Tablica simpleksowa (min) Od elementów wiersza drugiego odejmujemy elementy wyróżnionego wiersza trzeciego

Tablica simpleksowa (min) Od elementów wiersza czwartego odejmujemy elementy wyróżnionego wiersza trzeciego

Tablica simpleksowa (min) x1 będzie nową zmienną bazową Najmniejsza ujemna wartość x1 będzie nową zmienną bazową Sprawdzamy optymalność Najmniejsza wartość

Tablica simpleksowa (min) Bazę opuści t2 Sprawdzamy kryterium wyjścia Najmniejsza wartość

Tablica simpleksowa (min) Trzeci i czwarty wiersz przepisujemy Od elementów pierwszego odejmujemy elementy drugiego pomnożone przez dwa Drugi wiersz przepisujemy

Tablica simpleksowa III iteracja (min) Jeżeli w rozwiązaniu optymalnym pewne wartości j dla zmiennych niebazowych są równe zero , to otrzymane rozwiązanie optymalne jest niejednoznaczne (istnieje nieskończenie wiele rozwiązań optymalnych, które są kombinacją liniową rozwiązań bazowych wyznaczonych przez wprowadzanie do bazy tych zmiennych, dla których j =0). Jeżeli w rozwiązaniu wszystkie wartości j dla zmiennych niebazowych są różne od zera to, otrzymane rozwiązanie optymalne jest jednoznaczne. Rozwiązanie optymalne, bo wszystkie wartości współczynników optymalności j   są większe lub równe zero

Model matematyczny II Zmienne decyzyjne : x1 - ilość wydobywanego węgla w tonach; x2 - ilość wydobywanej ropy w hl. funkcja celu: f(x)=3x1 + 6x2  max(zysk w tys. zł) warunki ograniczające: 2 x1 + x2  8 warunek na czas pracy maszyn w godz. x1 + x2  10 warunek na liczbę zatrudnianych osób, warunki brzegowe: x1  0, x2  0.

Model matematyczny II Zmienne decyzyjne : x1;x2; s1; s2; t2,. funkcja celu: f(x)=3x1 + 6x2 +0 s1 +0 s2 -M t2  max(zysk w tys. zł) warunki ograniczające: 2 x1 + x2 +s1= 8 x1 + x2 -s2+t2= 10 warunki brzegowe: x1  0, x2  0, s1  0,s2  0;. t2 =0

Tablica simpleksowa

Tablica simpleksowa (max) Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j>0

Tablica simpleksowa (max) W kolejnej iteracji do bazy wejdzie x2 na miejsce s1

Tablica simpleksowa (max)

które spełnia warunek optymalności Jeżeli w rozwiązaniu, które spełnia warunek optymalności w bazie znajduje się zmienna sztuczna, a jej wartość jest większa od zera (tzn. wartość funkcji kryterium zależy od M), to zadanie jest sprzeczne. Tablica simpleksowa (max) Optymalne, bo wszystkie wskaźniki optymalności mniejsze od zera

Model matematyczny III Zmienne decyzyjne : x1 - ilość wydobywanego węgla w tonach; x2 - ilość wydobywanej ropy w hl. funkcja celu: f(x)=3x1 + 6x2  max(zysk w tys. zł) warunki ograniczające: 2 x1 + x2  8 warunek na czas pracy maszyn w godz. x1 + x2  10 warunek na liczbę zatrudnianych osób, warunki brzegowe: x1  0, x2  0.

Model matematyczny II Zmienne decyzyjne : x1;x2; s1; s2; t1 t2,. funkcja celu: f(x)=3x1 + 6x2 +0 s1 +0 s2 -M t1 -M t2  max(zysk w tys. zł) warunki ograniczające: 2 x1 + x2 +s1+ - t1 = 8 x1 + x2 -s2+t2= 10 warunki brzegowe: x1  0, x2  0, s1  0,s2  0; t1 =0; t2 =0

Tablica simpleksowa

Tablica simpleksowa (max) Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j>0

Tablica simpleksowa (max) W kolejnej iteracji do bazy wejdzie x1 na miejsce t1

Tablica simpleksowa (max)

Tablica simpleksowa (max)

Tablica simpleksowa (max)

Tablica simpleksowa (max)

Tablica simpleksowa (max)

Tablica simpleksowa (max) Jeżeli w pewnej iteracji nie można wyznaczyć żadnego ze współczynników Q, ponieważ wszystkie elementy wektora yj są ujemne bądź równe zero, to rozwiązanie jest nieograniczone. Nie da się wyznaczyć zmiennej, która wyjdzie z bazy

Model matematyczny II Zmienne decyzyjne : x1 - ilość wydobywanego węgla w tonach; x2 - ilość wydobywanej ropy w hl. funkcja celu: f(x)=3x1 + 6x2  max(zysk w tys. zł) warunki ograniczające: 2 x1 + x2  8 warunek na czas pracy maszyn w godz. x1 + x2  10 warunek na liczbę zatrudnianych osób, warunki brzegowe: x1  0, x2  0.

Model matematyczny II Zmienne decyzyjne : x1;x2; s1; s2; t2,. funkcja celu: f(x)=3x1 + 6x2 +0 s1 +0 s2 -M t2  max(zysk w tys. zł) warunki ograniczające: 2 x1 + x2 +s1= 8 x1 + x2 -s2+t2= 10 warunki brzegowe: x1  0, x2  0, s1  0,s2  0;. t2 =0

Tablica simpleksowa

Tablica simpleksowa (max) Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j>0

Tablica simpleksowa (max) W kolejnej iteracji do bazy wejdzie x2 na miejsce s1

Tablica simpleksowa (max)

które spełnia warunek optymalności Jeżeli w rozwiązaniu, które spełnia warunek optymalności w bazie znajduje się zmienna sztuczna, a jej wartość jest większa od zera (tzn. wartość funkcji kryterium zależy od M), to zadanie jest sprzeczne. Tablica simpleksowa (max) Optymalne, bo wszystkie wskaźniki optymalności mniejsze od zera

Model matematyczny III Zmienne decyzyjne : x1;x2; s1; s2; t1 t2,. funkcja celu: f(x)=3x1 + 6x2 +0 s1 +0 s2 -M t1 -M t2  max(zysk w tys. zł) warunki ograniczające: 2 x1 + x2 +s1+ - t1 = 8 x1 + x2 -s2+t2= 10 warunki brzegowe: x1  0, x2  0, s1  0,s2  0; t1 =0; t2 =0

Tablica simpleksowa

Tablica simpleksowa (max) Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j>0

Tablica simpleksowa (max) W kolejnej iteracji do bazy wejdzie x1 na miejsce t1

Tablica simpleksowa (max)

Tablica simpleksowa (max)

Tablica simpleksowa (max)

Tablica simpleksowa (max) Jeżeli w pewnej iteracji nie można wyznaczyć żadnego ze współczynników Q, ponieważ wszystkie elementy wektora yj są ujemne bądź równe zero, to rozwiązanie jest nieograniczone. Nie da się wyznaczyć zmiennej, która wyjdzie z bazy

Nowe zadanie Tablica simpleksowa III iteracja x1 3 x2 3 s4 -3 3 3 3 6 3 M-3 M Jeżeli w rozwiązaniu optymalnym pewne wartości j dla zmiennych niebazowych są równe zero , to otrzymane rozwiązanie optymalne jest niejednoznaczne (istnieje nieskończenie wiele rozwiązań optymalnych, które są kombinacją liniową rozwiązań bazowych wyznaczonych przez wprowadzanie do bazy tych zmiennych, dla których j =0). Rozwiązanie optymalne, bo wszystkie wartości współczynników optymalności j   są większe lub równe zero

Tablica simpleksowa IV iteracja - s1 x1 x2 s4 3 -3 6 M-3 M 1 - 3 -1 4 s1 1 1 1 s3 1 -1 1 -1 1 3 x2 1 1 -1 1 2 s4 -1 1 1 -1 2

Rozwiązanie optymalne niejednoznaczne

Rozwiązanie optymalne niejednoznaczne

Tablica simpleksowa IV iteracja x1 3 x2 3 s4 -3 3 3 3 6 3 M-3 M Rozwiązanie optymalne, bo wszystkie wartości współczynników optymalności j   są większe lub równe zero

które spełnia warunek optymalności Tablica simpleksowa max 1 1 12+M 6+M -M 48-2M 6 M -9-M -6-M -M Jeżeli w rozwiązaniu, które spełnia warunek optymalności w bazie znajduje się zmienna sztuczna, a jej wartość jest większa od zera (tzn. wartość funkcji kryterium zależy od M), to zadanie jest sprzeczne. Optymalne, bo wszystkie wskaźniki optymalności mniejsze od zera

Jeżeli w pewnej iteracji nie można wyznaczyć żadnego Tablica simpleksowa s2 6 x2 12 6 48 6 -6 -9 6 -M-6 -M Jeżeli w pewnej iteracji nie można wyznaczyć żadnego e współczynników Q, ponieważ wszystkie elementy wektora yj są ujemne bądź równe zero, to rozwiązanie jest nieograniczone. Nie da się wyznaczyć zmiennej, która wyjdzie z bazy