Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałWalenty Podbielski Został zmieniony 11 lat temu
1
Metoda simpleks opracowanie na podstawie „Metody wspomagające podejmowanie decyzji w zarządzaniu” D. Witkowska, Menadżer Łódź 2000. Simpleks jest uniwersalną metodą rozwiązywania zadań programowania liniowego. Jest to metoda iteracyjnego poprawiania wstępnego rozwiązania
3
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
4
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, x1C, x2 C.
5
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 +0s4min warunki ograniczające: 2x1 + x2 + s1 = 6 x1 + x2 - s2 = 2 x2 - s3 =1 x2 + s4 = 4 warunki brzegowe: x10, x20, s10, s20, s30, s40, x1,x2,s1,s2,s3,s4C .
6
Tablica simpleksowa
7
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 .
8
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+).
9
Tablica simpleksowa
10
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, t3C
11
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).
12
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:
13
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).
14
Rozwiązanie optymalne
15
Tablica simpleksowa (min)
Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j<0
16
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.
17
Tablica simpleksowa (min)
Do bazy wejdzie x2 Najmniejsza ujemna
18
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ść.
19
Tablica simpleksowa (min)
W kolejnej iteracji zamiast zmiennej t3 pojawi się x2 Tablica simpleksowa (min) Najmniejsza wartość
20
Tablica simpleksowa (min)
21
Tablica simpleksowa (min)
Przepisany z poprzedniej iteracji
22
Tablica simpleksowa (min)
Od elementów wiersza pierwszego odejmujemy elementy wyróżnionego wiersza trzeciego
23
Tablica simpleksowa (min)
Od elementów wiersza drugiego odejmujemy elementy wyróżnionego wiersza trzeciego
24
Tablica simpleksowa (min)
Od elementów wiersza czwartego odejmujemy elementy wyróżnionego wiersza trzeciego
25
Tablica simpleksowa (min) x1 będzie nową zmienną bazową
Najmniejsza ujemna wartość x1 będzie nową zmienną bazową Sprawdzamy optymalność Najmniejsza wartość
26
Tablica simpleksowa (min)
Bazę opuści t2 Sprawdzamy kryterium wyjścia Najmniejsza wartość
27
Tablica simpleksowa (min) Trzeci i czwarty wiersz przepisujemy
Od elementów pierwszego odejmujemy elementy drugiego pomnożone przez dwa Drugi wiersz przepisujemy
28
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
29
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.
30
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= warunki brzegowe: x1 0, x2 0, s1 0,s2 0;. t2 =0
31
Tablica simpleksowa
32
Tablica simpleksowa (max)
Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j>0
33
Tablica simpleksowa (max)
W kolejnej iteracji do bazy wejdzie x2 na miejsce s1
34
Tablica simpleksowa (max)
35
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
36
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.
37
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= warunki brzegowe: x1 0, x2 0, s1 0,s2 0; t1 =0; t2 =0
38
Tablica simpleksowa
39
Tablica simpleksowa (max)
Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j>0
40
Tablica simpleksowa (max)
W kolejnej iteracji do bazy wejdzie x1 na miejsce t1
41
Tablica simpleksowa (max)
42
Tablica simpleksowa (max)
43
Tablica simpleksowa (max)
44
Tablica simpleksowa (max)
45
Tablica simpleksowa (max)
46
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
48
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.
49
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= warunki brzegowe: x1 0, x2 0, s1 0,s2 0;. t2 =0
50
Tablica simpleksowa
51
Tablica simpleksowa (max)
Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j>0
52
Tablica simpleksowa (max)
W kolejnej iteracji do bazy wejdzie x2 na miejsce s1
53
Tablica simpleksowa (max)
54
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
55
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= warunki brzegowe: x1 0, x2 0, s1 0,s2 0; t1 =0; t2 =0
56
Tablica simpleksowa
57
Tablica simpleksowa (max)
Rozwiązanie jest nieoptymalne, bo wskaźniki optymalności j>0
58
Tablica simpleksowa (max)
W kolejnej iteracji do bazy wejdzie x1 na miejsce t1
59
Tablica simpleksowa (max)
60
Tablica simpleksowa (max)
61
Tablica simpleksowa (max)
62
Tablica simpleksowa (max)
63
Tablica simpleksowa (max)
64
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
65
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
66
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
67
Rozwiązanie optymalne niejednoznaczne
68
Rozwiązanie optymalne niejednoznaczne
69
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
70
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
71
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
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.