Linear programming

advertisement
Metody optymalizacji –
metody badań operacyjnych
1
Badania Operacyjne
(Operations Research, Management Science)
• Badania Operacyjne (BO) należą do
matematycznych nauk interdyscyplinarnych
zajmujących się efektywnym wykorzystaniem
środków przez różnego typu organizacje.
• Istotne znaczenie w BO ma interakcja pomiędzy
człowiekiem a technologią – nacisk na
praktyczne zastosowania metod
matematycznych.
2
Badania operacyjne – zakres metod
BO korzystają z narzędzi, m.in.:
• Rachunku prawdopodobieństwa,
• Statystyki,
• Ekonometrii,
• Metod optymalizacji,
• Teorii podejmowania decyzji i teorii gier,
• Teorii kolejek (masowej obsługi),
• Teorii grafów,
• Symulacji.
3
PROGRAMOWANIE LINIOWE
4
Wstęp do Programowania Liniowego (PL)
• Model PL ma na celu poszukiwanie maksimum bądź
minimum funkcji liniowej przy liniowych
ograniczeniach
• Elementy modelu PL:
– Zbiór zmiennych decyzyjnych
– Funkcja kryterium.
– Układ ograniczeń.
5
Model Programowania Liniowego w postaci klasycznej
max z (x)  c x
T
Ax  b
x0
x = [xj] j=1,...,n – wektor wartości zmiennych decyzyjnych,
c = [cj] j=1,...,n – wektor parametrów funkcji kryterium,
A = [aij] i=1,...,m, j=1,...,n – macierz parametrów lewych stron
ograniczeń,
b = [bi] i=1,...,m – wektor prawych stron ograniczeń
6
Model Programowania Liniowego w postaci klasycznej
n
max z (x)   c j x j
j 1
a11 x1  a12 x 2  ...  a1n x n  b1
a 21 x1  a 22 x 2  ...  a 2 n x n  b2
............................................
a m1 x1  a m 2 x 2  ...  a mn x n  bm
x1  0, x2  0, ... xn  0
7
Wstęp do PL
Zastosowania modeli LP w różnych dziedzinach:
• Produkcja
• Finanse
• Rolnictwo
• Marketing i reklama, itd..
8
Wstęp do PL
• Istotna rola Programowania Liniowego
– Efektywne algorytmy obliczeniowe gwarantujące
znalezienie rozwiązania optymalnego
– Możliwa analiza wrażliwości rozwiązania optymalnego –
co by było, gdyby...?.
9
Wstęp do PL
• Założenia modelu PL:
– Znane wartości parametrów,
– Funkcja kryterium i ograniczenia mają własność stałych
przyrostów (constant returns to scale) – ten sam co do
wielkości przyrost zmiennej , bez względu na początkowy
poziom, powoduje zawsze taki sam przyrost wartości funkcji
– Addytywność efektów związanych ze zmiennymi,
– Zmienne decyzyjne mają charakter ciągły – mogą przyjąć
każdą wartość z określonego przedziału liczbowego (inne
modelowanie dla zmiennych całkowitoliczbowych czy też
binarnych),
– Zakłada się nieujemność zmiennych decyzyjnych.
10
Firma „Puchatek” – problem optymalnego
planu produkcji
• Firma produkuje dwa rodzaje zabawek plastikowych samochodzików - dla dzieci powyżej 1 roku:
– ciężarówka.
– traktor.
• Występują ograniczone zasoby dwóch środków
produkcji:
– 1000 kg specjalnego plastiku.
– Czas produkcji w ciągu tygodnia ograniczony do 40
godzin.
11
Firma „Puchatek” – problem optymalnego planu
produkcji
• Wymagania rynkowe
– Wielkość produkcji nie może przekroczyć 7000 szt.
– Liczba ciężarówek nie może przekroczyć liczby
traktorów o więcej niż 3500 szt.
• Informacja technologiczna
– Ciężarówka wymaga 20 dkg plastiku i 0,3 minut
czasu produkcji,
– Traktor wymaga 10 dkg plastiku i 0,4 minut czasu
pracy.
12
Firma „Puchatek” – problem optymalnego planu
produkcji
• Obecna strategia planowania produkcji:
– Produkować jak najwięcej produktu bardziej zyskownego
(Ciężarówka – zysk jedn. 8 zł za dziesięć sztuk),
– Pozostałe środki przeznaczyć na produkt mniej zyskowny
(Traktor – zysk jedn. 5 zł za dziesięć sztuk), pamiętając o
zaleceniach działu marketingu.
• Obecny tygodniowy plan produkcji:
Ciężarówka
Traktor
Szacowany zysk
8(450) + 5(100)
= 4500 sztuk
= 1000 sztuk
= 4100 zł tygodniowo
13
Firma szuka rozwiązania,
które może przynieść
zwiększenie zysku
14
Model PL dla firmy „Puchatek”
• Zmienne decyzyjne:
– X1 = tygodniowa wielkość produkcji ciężarówek
(w 10 szt.)
– X2 = tygodniowa wielkość produkcji traktorów
(w 10 szt.)
• Funkcja kryterium:
– maksymalizacja zysku tygodniowego
15
Model PL dla firmy „Puchatek”
Max z(x) = 8X1 + 5X2
(zysk tygodniowy w zł)
przy ograniczeniach:
2X1 + 1X2 < 1000 (plastik w kg)
3X1 + 4X2 < 2400 (czas produkcji w minutach)
X1 + X2 < 700 (wielkość produkcji w 10 szt.)
X1 - X2 < 350 (Mix)
Xj 0, j = 1,2
(nieujemność zmiennych decyzyjnych)
16
Analiza graficzna zadania PL
Zbiór punktów, które spełniają
wszystkie ograniczenia to
ZBIÓR ROZWIĄZAŃ DOPUSZCZALNYCH
17
Analiza graficzna – zbiór rozwiązań
dopuszczalnych
X2
Ograniczenia na nieujemność zmiennych
X1
18
Analiza graficzna – zbiór rozwiązań
dopuszczalnych
X2
Plastik
2X1+X2 < 1000
1000
Produkcja całkowita:
X1+X2 <700 (nieistotne)
700
500
Niedopuszczalne
Czas produkcji
3X1+4X2 <2400
Dopuszczalne
500
700
X1
19
Analiza graficzna – zbiór rozwiązań
dopuszczalnych
X2
1000
Plastik
2X1+X2 < 1000
Produkcja całkowita:
X1+X2 <700 (nieistotne)
700
500
Czas produkcji
3X1+4X2< 2400
Niedopuszczalne
Mix
X1-X2 < 350
Dopuszczalne
500
X1
700
Punkty wewnętrzne. Punkty brzegowe
Punkty wierzchołkowe
• Trzy rodzaje rozwiązań dopuszczalnych
20
Poszukiwanie rozwiązania
optymalnego
21
Poszukiwanie rozwiązania optymalnego
X2
1000
700
Ustalamy dowolną wielkość zysku, np. = 2000 zł,
i rysujemy odpowiadającą izokwantę funkcji kryterium.
(Izokwanta liniowej funkcji kryterium to prosta mająca tę własność,
że dla wszystkich punktów tej prostej wartość funkcji jest
jednakowa)
Zysk =4360 zł
500
Zwiększamy zysk tak dalece jak to możliwe...
...i kontynuujemy, dopóki jest to dopuszczalne
X1
22
500
Podsumowanie rozwiązania optymalnego
Ciężarówki
= 3200 szt.
Traktory
= 3600 szt.
Zysk maksymalny = 4360 zł
– Rozwiązanie optymalne wykorzystuje cały zasób surowca
– plastik oraz czasu produkcji – ograniczenia wiążące.
– Produkcja całkowita to 6800 szt. (a nie max 7000szt.)
– Ograniczenie na Mix produktów spełnione jako
nierówność:
320 - 360 = -40 < 350
23
Punkty wierzchołkowe a rozwiązanie optymalne
– Jeżeli problem PL posiada rozwiązanie optymalne, to jest
nim punkt wierzchołkowy, przynajmniej jeden.
24
Punkty wierzchołkowe a rozwiązanie optymalne
 Jeżeli dokonany zostanie wybór rozwiązania optymalnego, to
proste przecinające się w punkcie wierzchołkowym, będącym
rozwiązaniem optymalnym, odpowiadają ograniczeniom
wiążącym, tj. spełnionym jako równania.
 W problemie firmy „Puchatek” ograniczeniami wiążącymi
są: zapas plastiku oraz czas produkcji.
Oznacza to, że cały zapas surowca jest wykorzystany.
Również czas produkcji wykorzystany jest w 100%
Pozostałe ograniczenia są niewiążące – obserwujemy
zapas w ograniczeniu na wielkość produkcji oraz mix
produktów.
Zapas – różnica między wartością prawej i lewej strony
ograniczenia
25
Niejednoznaczne rozwiązanie optymalne
• W przypadku niejednoznaczności rozwiązania optymalnego,
izokwanta funkcji kryterium jest równoległa do jednego z
ograniczeń.
•W przypadku niejednoznacznosci
każda liniowa kombinacja (średnia
ważona) optymalnych rozwiązań
wierzchołkowych jest również
optymalna
26
Analiza wrażliwości rozwiązania
optymalnego
• Jak wrażliwe jest rozwiązanie optymalne na zmiany
parametrów modelu?
• Powody przeprowadzania analizy wrażliwości:
– Założenie o znanych wartościach parametrów nie jest
prawdziwe – znamy tylko wartości ocen statystycznych lub
eksperckich parametrów – możliwy błąd szacunku,
– Wartości parametrów mogą zmieniać się w czasie,
– Analiza wrażliwości dostarcza cennej informacji dla celów
zarządzania.
27
Wrażliwość rozwiązania na zmiany
parametrów funkcji kryterium.
•
Przedział optymalności
– Rozwiązanie optymalne pozostaje niezmienne tak długo jak
• Parametr funkcji kryterium należy do przedziału optymalności
• Nie obserwujemy zmian innych parametrów modelu.
– Wartość funkcji kryterium ulegnie zmianie, jeżeli analizowany
parametr dotyczy zmiennej, której wartość jest większa od zera.
28
Wrażliwość rozwiązania na zmiany
parametrów funkcji kryterium.
1000
X2
500
X1
29
500
800
Wrażliwość rozwiązania na zmiany
parametrów funkcji kryterium.
1000
X2
Przedział optymalności: [3.75, 10]
500
400
600
800
X1
30
Wrażliwość rozwiązania na zmiany
parametrów funkcji kryterium.
Interpretacja przedziału optymalności dla parametru c1:
Zakładając, że inne elementy modelu (parametry, ograniczenia) nie
ulegną zmianie, to zmiana zysku jednostkowego (w 10 szt.) dla
ciężarówek w przedziale [3,75 ;10] zł nie spowoduje utraty
optymalności przez uzyskane rozwiązanie. Maksymalny zysk
odpowiada produkcji 3200 ciężarówek i 3600 szt. traktorów.
Oczywiście, zmiana zysku jednostkowego dla ciężarówek
spowoduje zmianę wartości maksymalnego zysku, np. dla
c1=9zł/10szt. maksymalny zysk wyniesie 320*9+360*5= 4680 zł.
31
Analiza wrażliwości rozwiązania na
zmianę prawych stron ograniczeń
• Jak zmieni się optymalna wartość funkcji kryterium (np.
maksymalny zysk), jeżeli prawa strona wybranego
ograniczenia wzrośnie o jednostkę?
• Dla jak dużych przyrostów bądź spadków wartości
prawej strony ograniczenia, wyznaczona wartość
przyrostu funkcji kryterium pozostanie niezmieniona?
32
Analiza wrażliwości rozwiązania na
zmianę prawych stron ograniczeń
• Każda zmiana wartości prawej strony
ograniczenia wiążącego spowoduje zmianę
rozwiązania optymalnego.
• Dowolna zmiana prawej strony ograniczenia
niewiążącego, mniejsza od wielkości zapasu,
nie spowoduje zmiany rozwiązania optymalnego,
33
Dualizm w programowaniu liniowym
Symetryczna para zadań dualnych:
max z (x)  c x
T
Ax  b
ATy  c
y0
x0
zadanie prymalne
min w( y )  b y
T
x - n 1 wektor zmiennych decyzyjnych,
zadanie dualne
y - m  1 wektor zmiennych dualnych.
max z( x)  min w( y ) .
34
Własności zadania dualnego:
• Jeżeli jedno z pary zadań nie posiada skończonego
rozwiązania optymalnego, to drugie z zadań jest
sprzeczne,
• Jeżeli jedno z pary zadań jest sprzeczne, to drugie
może być sprzeczne bądź nie posiadać skończonego
rozwiązania optymalnego,
• Każda ze zmiennych dualnych odpowiada konkretnemu
ograniczeniu zadania prymalnego,
35
Interpretacja wycen dualnych
• interpretacja wynika z własności równości optymalnych
wartości funkcji kryterium obu zadań:
z max
yi 
bi
,
przyrost optymalnej wartości funkcji kryterium zadania prymalnego
spowodowany
marginalnym
przyrostem
prawej
strony
odpowiadającego ograniczenia
(pamiętamy, że zmiana wartości prawej strony ograniczenia powoduje, w
ogólnym przypadku, zmianę wartości zmiennych zadania PL).
36
Wyceny dualne (Shadow Prices)
Zakładając, że nie występują zmiany żadnych
innych parametrów wejściowych modelu, zmiana
optymalnej (max albo min) wartości funkcji
kryterium na jednostkę przyrostu wartości prawej
strony ograniczenia nazywana jest wyceną (ceną)
dualną (najczęściej, wyceną dualną zasobu)
37
Plastik
Wyceny dualne – ilustracja graficzna
X2
1000
Jeżeli dostępna jest większa ilość plastiku
(ograniczenie na zasób plastiku będzie
rozluźnione), wzrasta wartość prawej strony
ograniczenia
Max zysk = 4360 zł
500
Max zysk = 4363.4 zł
Wycena dualna =
4363.40 – 4360.00 = 3.40
Czas produkcji
X1
500
38
Wyceny dualne – interpretacja c.d.
• Zmienna dualna posiada miano, wynikające ze
sposobu pomiaru wartości funkcji kryterium i
wartości ograniczenia, np. y1=3,4 $/kg (dla 1.
ograniczenia na zasób plastiku)
• Jeżeli zapas plastiku zwiększy się o 1 kg to
maksymalny zysk (odpowiadający nowemu
rozwiązaniu optymalnemu) zwiększy się o 3,4 $ i
wyniesie 4360 + 3,4 =4363,4 $.
39
Własności zadania dualnego c.d.:
• W przypadku modeli PL o mieszanych warunkach
ograniczających, zmienne dualne odpowiadające
ograniczeniom o przeciwnych znakach niż dla
symetrycznej pary (max „” oraz min „”) są
niedodatnie; w przypadku ograniczeń równościowych
nie można przewidzieć znaku zmiennej dualnej.
40
Przedział dopuszczalności
• Zakładając brak zmian wartości innych
parametrów wejściowych modelu, przedziałem
dopuszczalności nazywamy:
Przedział wartości prawej strony ograniczenia, w zakresie
którego nie ulegają zmianie wyceny dualne.
• W obrębie przedziału dopuszczalności, zmianę
optymalnej wartości funkcji kryterium możemy
wyznaczyć następująco:
Zmiana wartości f. kryterium =
[wycena dualna]x[zmiana wartości prawej strony
ograniczenia]
41
Przedział dopuszczalności
Plastik
X2
Zwiększanie zasobu plastiku
przynosi efekt tylko do czasu,
aż pojawi się nowe
ograniczenie wiążące.
1000
Produkcja całkowita
X1 + X2≤700
Nowe ograniczenie wiążące
500
To jest rozwiązanie niedopuszczalne
Czas produkcji
X1
500
42
Przedział dopuszczalności
Plastik
X2
1000
Zauważmy, jak zmienia się
zysk, gdy rośnie zasób plastiku.
500
Czas produkcji
X1
500
43
Przedział dopuszczalności
X2
1000
Rozwiązanie niedopuszczalne
Zasób plastiku zmniejsza się
(ograniczenie jest bardziej restrykcyjne).
Zysk zmniejsza się
500
Nowe ograniczenie
wiążące
X1
500
44
„Puchatek” – wprowadzanie danych
w programie WinQSB
Wprowadzanie danych w programie WinQSB
45
„Puchatek” – rozwiązanie graficzne
w programie WinQSB
Zapas
plastiku
Ilość
wyrobów
mix
Czas
pracy
46
„Puchatek” – rozwiązanie w programie WinQSB
Przedziały
optymalności
Wyceny dualne
Przedziały
dopuszczalności
Zapas/nadmiar
47
Możliwe, inne niż jednoznaczne,
wyniki optymalizacji
• Sprzeczność zadania: Zbiór rozwiązań dopuszczalnych
jest pusty. Powodem są zbyt restrykcyjne ograniczenia.
• Nieograniczoność: Funkcja kryterium może być dowolnie
duża. Powodem jest brak istotnego ograniczenia w modelu.
• Rozwiązanie niejednoznaczne: Więcej niż jeden punkt
odpowiada optymalnej wartości funkcji kryterium
48
Zadanie PL jest sprzeczne
.
2
3
1
49
Rozwiązanie
nieograniczone

50
Download