Tytuł: 01 Budowa portfela produktowego. Zastosowanie programowania liniowego Autor: Piotr SAWICKI Zakład Systemów Transportowych WMRiT PP piotr.sawicki@put.poznan.pl www.put.poznan.pl/~piotr.sawicki www.facebook.com/piotr.sawicki.put Przedmiot: Optymalizacja w transporcie Specjalność: LT, TD, TŻ Wersja: 2015.03.09 Agenda Kluczowe elementy wykładu WPROWADZENIE Cel i zakres wykładu. PROBLEM PORTFELOWY Istota. Sformułowanie matematyczne. Rozwiązanie. Analiza rozwiązania ZADANIE PROGRAMOWANIA LINIOWEGO Uogólnienie zadania programowania liniowego (zpl). Cechy zpl PODSUMOWANIE Resume. Dyskusja 2 transporcie 1
Wprowadzenie Cel i zakres wykładu à Cel rozpoznanie specyfiki problemu portfelowego zbudowanie modelu matematycznego rozwiązanie problemu (metodą graficzną i z zastosowaniem Solver-a) uogólnienie problemów o charakterze liniowym Grafika: www.dreamstime.com 3 Wprowadzenie Ramowy program zajęć wadzenie acja zajęć, kluczowe! M1: dobór i wykorzystanie zasobów budowa portfela produktowego (programowanie liniowe) ustalanie kompozycji floty (programowanie całkowitoliczbowe) załadunek problem plecakowy (programowania całkowitoliczbowe) harmonogramowanie pracy (programowanie binarne) warsztat podsumowujący M1 à 3 moduły tematyczne (grupy problemów) M0: wprowadzenie M1: dobór i wykorzystanie zasobów M2: lokalizacja obiektów i ustalanie zasięgu ich działania M3: ustalanie tras M4: podsumowanie 4 transporcie 2
Agenda Kluczowe elementy wykładu WPROWADZENIE Cel i zakres wykładu. PROBLEM PORTFELOWY Istota. Sformułowanie matematyczne. Rozwiązanie. Analiza rozwiązania ZADANIE PROGRAMOWANIA LINIOWEGO Uogólnienie zadania programowania liniowego (zpl). Cechy zpl PODSUMOWANIE Resume. Dyskusja 5 Definicja problemu à Ustalenie zestawu produktów, lub usług (zasobów) gwarantujących osiągnięcie najkorzystniejszego rezultatu rynkowego w zdefiniowanych warunkach oferta usług logistycznych rodzaj przewozów w firmie transportowej 6 transporcie 3
Definicja problemu A: Dobór metody rozwiązania. B: Rozwiązanie problemu A: Interpretacja rozwiązania B: Analiza wrażliwości à Analiza problemu na przykładzie 4-etapowy proces rozwiązywania 7 : Identyfikacja Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Analiza przypadku problem sformułowany w postaci zadania programowania liniowego zobacz treść przypadku: Firma ForkLift Service (FLS) jest jednym z ( ) 8 transporcie 4
: matematycznego. Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Zmienne decyzyjne 2 zmienne S: liczba sprzedanych wózków widło-wych typu 20S oferowana przez FLS H: liczba sprzedanych wózków widło-wych typu 45H oferowana przez FLS à Parametry zyskowność koszt jednostkowy vs. budżet pracochłonność vs. zatrudnienie dostępność 9 : matematycznego. Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Funkcja celu maksymalizacja zysku Z ze sprzedaży wózków widłowych typu 20S i 45H Max Z(S,H) jak ustalić zysk wynikający ze sprzedaży obu typów wózków? Z=z S +z H gdzie: z S - jednostkowy zysk ze sprzedaży wózka typu 20S z H - jednostkowy zysk ze sprzedaży wózka typu 45H 10 transporcie 5
: matematycznego. Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Funkcja celu zyskowność ze sprzedaży każdego typu modelu z s = 0,15 19.000 [ ] S = 2.850S z H = 0,19 33.000 [ ] H = 6.270H ostateczne sformułowanie funkcji celu jeżeli Z=z S +z to Max Z(S, H) = 2.850S + 6.270H 11 : matematycznego. Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Ograniczenia (identyfikacja) (1) zasoby finansowe firmy FLS max. 2.400.000 [ /rok] (2) dostępny fundusz czasu pracy poświęcany przez pracowników FLS na sprzedaż wózków 20S i 45H max. 520 [rbh/rok] (3) dostępność wózków u producenta 20S: max 100 [szt./rok] 45H: max 75 [szt./rok] (4) minimalna wielkość zamówienia u producenta 20S: min 10 [szt.] 45H: min 5 [szt.] 12 transporcie 6
: matematycznego Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Ograniczenia (zapis) (1) zasoby finansowe firmy FLS: max. 2.400.000 [ ], stąd: 19.000 S + 33.000 H 2.400.000 [ ] (2) dostępny fundusz czasu pracy: max. 520 [rbh/rok], stąd: 6 S + 4 H 520 [rbh/rok] 13 : matematycznego Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Ograniczenia (zapis) (3) możliwości produkcyjne firmy Clark w zakresie dostarczenia firmie FLS wózków widłowych typu 20S i 45H dostępność wózków 20S S 100 [szt./rok] dostępność wózków 45H H 75 [szt./rok] 14 transporcie 7
: matematycznego Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Ograniczenia (zapis) (4) minimalna liczba wózków w jednorazowym zamówieniu, zapewniająca ciągłość sprzedaży przy jednoczesnym zachowaniu satysfakcji klientów firmy FLS zapotrzebowanie firmy FLS na wózki typu 20S S 10 [szt./rok] zapotrzebowanie firmy FLS na wózki typu 45H H 5 [szt./rok] 15 : matematycznego Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Ograniczenia (zapis) (5) formalnie: poszukiwane rozwiązanie (S, H) nie powinno przyjmować wartości ujemnych dla wózków typu 20S S 0 [szt./rok] dla wózków typu 45H H 0 [szt./rok] 16 transporcie 8
: matematycznego Dobór metody rozwiązania. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości à Ostateczna postać modelu matematycznego funkcja celu Max Z(S, H) = 2.850S + 6.270H przy ograniczeniach (1) 19S + 33H 2.400 (2) 6S + 4H 520 (3.1) S 100 (3.2) H 75 (4.1) S 10 (4.2) H 5 (5.1) S 0 (5.2) H 0 17 : Dobór metody i rozwiązanie A. Dobór metody rozwiązania B. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości A. Dobór metody rozwiązania B. Rozwiązanie problemu Metoda graficzna 18 transporcie 9
H 140 (4.1) S 10 Obszar rozwiązań niedopuszczalnych (3.1) S 100 : Dobór metody i rozwiązanie Metoda graficzna Funkcja celu: Max Z(S, H) = 2.850S + 6.270H 100 75 20 5 0 (5.1) 10 Obszar rozwiązań dopuszczalnych dla ograniczeń (3.1) (5.2) S 0 H 0 (5.2) H 75 Ograniczenia (5.1) i (5.2) są nieaktywne 20 100 120 (3.2) H 5 (4.2) S Ograniczenia: (1) 19S + 33H 2.400 (2) 6S + 4H 520 (3.1) S 100 (3.2) H 75 (4.1) S 10 (4.2) H 5 (5.1) S 0 (5.2) H 0 19 H 140 100 75 (4.1) (0;130) (2) S 10 Ograniczenie (3.1) staje się nieaktywne 6S + 4H = 520 (3.1) S 100 H 75 (3.2) : Dobór metody i rozwiązanie Metoda graficzna Funkcja celu: Max Z(S, H) = 2.850S + 6.270H Ograniczenia: (1) 19S + 33H 2.400 (2) 6S + 4H 520 20 5 (5.1) S 0 H 0 (5.2) (86,7; 0) H 5 (4.2) ograniczenie (2) 6S + 4H = 520 jeżeli S = 0 to H = 130; (0;130) jeżeli H = 0 to S = 86,7; (86,7;0) 0 10 20 100 120 S 20 transporcie 10
H 140 (130) (4.1) S 10 (3.1) S 100 : Dobór metody i rozwiązanie Metoda graficzna Funkcja celu: Max Z(S, H) = 2.850S + 6.270H 100 75 (2) (0; 72,7) 6S + 4H = 520 H 75 (3.2) Ograniczenia: (1) 19S + 33H 2.400 (2) 6S + 4H 520 20 5 0 (5.1) 10 S 0 H 0 (5.2) (1) 19S +33H = 2 400 (126,3; 0) H 5 20 (86,7) 100 120 (4.2) S ograniczenie (1) 19 S + 33 H = 2.400 jeżeli S = 0 to H = 72,7 (0;72,7) jeżeli H = 0 to S = 126,3 (126,3;0) 21 H 140 S = 10 S = 100 : Dobór metody i rozwiązanie Metoda graficzna (130) 100 6S + 4H = 520 Ostatni wierzchołek określanie kierunku zmiany wartości funkcji celu (tu kierunek przyrostu FC) Max Z(S, H) = 2.850S + 6.270H 2.850S + 6.270H = 0 75 H = 75 Z 2 =364 800 Z 1 =239 400 (40; 40) 19S +33H = 2 400 jeżeli S = 10 to H = -4,5 (10; -4,5) jeżeli S = 20 to H = -9 (20; -9) 20 (40; 20) Z= 2 850S + 6 270H 5 H = 5 0-4,5-9 20 40 (86,7) 100 120 (126,3) S 22 transporcie 11
H 140 (130) 100 75 20 S = 10 6S + 4H = 520 (10; 66,96) S = 100 H = 75 19S +33H = 2 400 5 H = 5 0 20 100 120 S (86,7) (126,3) : Dobór metody i rozwiązanie Metoda graficzna określanie parametrów wierzchołka (określenie punktu przecięcia prostych) S = 10 19S + 33H = 2.400 H = -19/33 S + 2.400/33 S = 10; H = 66,96 określanie wartości funkcji celu jeżeli S = 10 i H = 66,96 to Z = 448.400 à Z max 23 : Dobór metody i rozwiązanie Metoda graficzna à Algorytm metody graficznej (1) narysuj obszar rozwiązań dopuszczalnych i określ jego wierzchołki jeżeli obszar rozwiązań jest pusty à wszystkie rozwiązania są niedopuszczalne à ponownie rozważ sformułowanie ograniczeń (2) narysuj 2 różne wykresy funkcji celu (FC) i określ kierunek optymalizacji (max vs. min) jeżeli problem dotyczy max FC równolegle przesuń linię reprezentującą FC w kierunku przyrostu jej wartości jeżeli problem polega na min FC przesuń linię w kierunku przeciwnym, tj. zmniejszania się wartości FC (3) przesuń funkcję celu znajdując ostatni wierzchołek w przypadku, gdy FC jest równoległa do jednego z boków obszaru rozwiązań dopuszczalnych (ORD), wówczas problem posiada szereg rozwiązań alternatywnych leżących pomiędzy wierzchołkami ORD (4) równania prostych, które przecinają się w punkcie wierzchołkowym (patrz p.3) tworzą układ równań określających współrzędne punktu optymalnego 24 transporcie 12
: Interpretacja rozwiązania i analiza wrażliwości A. Dobór metody rozwiązania B. Rozwiązanie problemu A: Interpretacja rozwiązania B: Analiza wrażliwości à Rozwiązanie optymalne optymalna liczba sprzedanych wózków widłowych 20S wynosi S=10 [szt.] optymalna liczba sprzedanych wózków widłowych 45H wynosi H=66,96 [szt.] w praktyce: H=66 lub H=67* (*- rozwiązanie poza obszarem rozwiązań dopuszczalnych) zysk ze sprzedaży wózków obu typów Z=2.850S + 6.270H S=10 [szt.] i H=66,96 [szt.] Z=448.400 [ ] à Z max lub S=10 i H=66 à Z=442.320 [ ] 25 : Interpretacja rozwiązania i analiza wrażliwości A. Dobór metody rozwiązania B. Rozwiązanie problemu A: Interpretacja rozwiązania B: Analiza wrażliwości à Analiza ograniczeń ograniczenie (1) dostępne zasoby finansowe LHS* RHS* 19.000S + 33.000H 2.400.000 jeżeli S=10 [szt.] i H=66,96 [szt.] to LHS 1 = 2.400.000 [ ] RHS 1 = 0 [ ] (brak zasobów!) * LHS ang. left-hand side; RHS- ang. right-hand side 26 transporcie 13
: Interpretacja rozwiązania i analiza wrażliwości A. Dobór metody rozwiązania B. Rozwiązanie problemu A: Interpretacja rozwiązania B: Analiza wrażliwości à Analiza ograniczeń ograniczenie (2) dostępna liczba roboczogodzin 6S + 4H 520 jeżeli S=10 szt. i H=66,96 [szt.] to LHS 2 = 327,84 [rbh] RHS 2 =192,16 [rbh] (wolne zasoby) 27 : Interpretacja rozwiązania i analiza wrażliwości A. Dobór metody rozwiązania B. Rozwiązanie problemu A: Interpretacja rozwiązania B: Analiza wrażliwości à Analiza ograniczeń ograniczenie (3.1) dostępność wózków 20S S 100 jeżeli S=10 szt. i H=66,96 [szt.] to LHS 3 = 10 [szt.] RHS 3 = 90 [szt.] (wolne zasoby) 28 transporcie 14
: Interpretacja rozwiązania i analiza wrażliwości A. Dobór metody rozwiązania B. Rozwiązanie problemu A: Interpretacja rozwiązania B: Analiza wrażliwości à Analiza ograniczeń ograniczenie (3.2) dostępność wózków 45H H 75 jeżeli S=10 szt. i H=66,96 [szt.] to LHS 4 = 66,96 [szt.] RHS 4 = 8,04 [szt.] (wolne zasoby) 29 : Interpretacja rozwiązania i analiza wrażliwości à Analiza ograniczeń pozostałe ograniczenia (4.1-5.2) A. Dobór metody rozwiązania B. Rozwiązanie problemu A: Interpretacja rozwiązania B: Analiza wrażliwości (4.1) S 10 (4.2) H 5 (5.1) S 0 (5.2) H 0 30 transporcie 15
: Dobór metody i rozwiązanie A. Dobór metody rozwiązania B. Rozwiązanie problemu Interpretacja rozwiązania Analiza wrażliwości A. Dobór metody rozwiązania B. Rozwiązanie problemu Metoda graficzna 31 : Dobór metody i rozwiązanie Solver Model zbudowany w MS Excel stanowi załącznik do materiału wykładowego: _LP.xlsx Funkcja celu: Max Z(S, H) = 2.850S + 6.270H Ograniczenia: (1) 19S + 33H 2.400 (2) 6S + 4H 520 (3.1) S 100 (3.2) H 75 (4.1) S 10 (4.2) H 5 (5.1) S 0 (5.2) H 0 Zapis modelu matematycznego w arkuszu MS Excel Model matematyczny problemu 32 transporcie 16
: Dobór metody i rozwiązanie Solver =C7*C3 + D7*D3 lub =SUMA.ILOCZYNÓW(C7:D7; C3:D3) Funkcja celu: Max Z(S, H) = 2.850S + 6.270H Ograniczenia: (1) 19S + 33H 2.400 (2) 6S + 4H 520 (3.1) S 100 (3.2) H 75 (4.1) S 10 (4.2) H 5 (5.1) S 0 (5.2) H 0 33 : Dobór metody i rozwiązanie Solver =C12*C3 + D12*D3 lub =SUMA.ILOCZYNÓW(C12:D12; C3:D3) LHS* Funkcja celu: Max Z(S, H) = 2.850S + 6.270H Ograniczenia: (1) 19S + 33H 2.400 (2) 6S + 4H 520 (3.1) S 100 (3.2) H 75 (4.1) S 10 (4.2) H 5 (5.1) S 0 (5.2) H 0 RHS* * LHS ang. left-hand side; RHS- ang. right-hand side 34 transporcie 17
: Dobór metody i rozwiązanie Solver 35 : Interpretacja rozwiązania i analiza wrażliwości Solver Max Z(S, H) = 448.400 dla S=10 [szt.] i H=66,96 [szt.] Wykorzystane zasoby * LHS ang. left-hand side; RHS- ang. right-hand side 36 transporcie 18
: Interpretacja rozwiązania i analiza wrażliwości Solver Max wartość FC Wartość zmiennych decyzyjnych dla optimum FC LHS dla wartości zmiennych decyzyjnych Raport wyników RHS dla wartości zmiennych decyzyjnych; Wiążące = brak zasobów Niewiążace = wolne zasoby 37 : Interpretacja rozwiązania i analiza wrażliwości Solver Optymalna wartość zm. dec. Parametry w FC Dopuszczalny wzrost/ zmniejszenie wartości param., dla których wartości zm. dec. nie ulegną zmianie Jaki zakres zmian RHS nie spowoduje zmiany ceny dualnej Raport wrażliwości O Ile zmieni się wartość FC, jeżeli RHS wzrośnie o 1 38 transporcie 19
: Interpretacja rozwiązania i analiza wrażliwości Solver Optymalna wartość FC Wartość zm. dec. dla których FC à max Granice zmienności obszaru rozwiązań dopuszczalnych FC nie zależy od zmian S DG (S)= GG (S) = 10 DG (H) = 5; GG (H) = 66,97 Raport granic 39 : Interpretacja rozwiązania i analiza wrażliwości Solver H 140 (130) S = 10 S = 100 100 6S + 4H = 520 75 H = 75 Z(max) = 448.400 E 19S +33H = 2 400 20 Z(min) = 59.850 E 5 H = 5 0 20 100 120 S (86,7) (126,3) 40 transporcie 20
: Interpretacja rozwiązania i analiza wrażliwości à Rozwiązanie problemu portfelowego czy w portfelu produktowym (palecie wózków) znajdują się modele 20S i 45H? 20S: 10 szt. 45H: 66(,97) szt. rekomendacja utrzymanie 20S w portfelu dla zachowania ciągłości sprzedaży koncentracja sprzedaży na 45H pozyskanie dodatkowych środków finansowych (eliminacja ograniczenia) à Czy na pewno model zbudowano właściwie? czy zapis funkcji celu i ograniczeń jest właściwy? 41 Agenda Kluczowe elementy wykładu WPROWADZENIE Cel i zakres wykładu. PROBLEM PORTFELOWY Istota. Sformułowanie matematyczne. Rozwiązanie. Analiza rozwiązania ZADANIE PROGRAMOWANIA LINIOWEGO Uogólnienie zadania programowania liniowego (zpl). Cechy zpl PODSUMOWANIE Resume. Dyskusja 42 transporcie 21
Zadanie programowania liniowego Zapis à Ogólne sformułowanie zadania programowania liniowego funkcja celu (maksymalizacja) Max Z = c 1 x 1 + c 2 x 2 +... +c n x n ograniczenia (dostępne zasoby) a 11 x 1 + a 12 x 2 +... + a 1n x n b 1 a 21 x 1 + a 22 x 2 +... + a 2n x n b 2... a m1 x 1 + a m2 x 2 +... + a mn x n b m x 1 0, x 2 0,..., x n 0 gdzie: x 1, x 2,..., x 3 zmienne decyzyjne parametry: c j jednostkowy przyrost j-tej czynności w ocenie globalnej Z (j = 1, 2,..., n) b i ilość i -tego zasobu dostępnego do alokacji do czynności (i = 1, 2,..., m) a ij ilość i -tego zasobu konsumowanego przez j-tą czynność 43 Zadanie programowania liniowego Cechy zpl à Model matematyczny problemu à Które z poniższych sformułowań maja sformułowany w postaci zadania charakter liniowy? programowania liniowego 2 Min Z (x funkcja celu (kryterium jakości dobroci 1,x 2 ) = 2x 1 + 3x 2 rozwiązania) 3 Min Z (x funkcja liniowa 1,x 2 ) = x 1 + x 2 zmienne decyzyjne w pierwszej potędze 2x ograniczenia 1 + 3x 2 2 45 funkcja liniowa Min Z (x 1,x 2 ) = 2x 1 + x 2 zmienne decyzyjne w pierwszej potędze zależności w postaci >, <, = 3x 1 + 4x 2 + x 3 10 44 transporcie 22
Zadanie programowania liniowego Cechy zpl à Co w praktyce oznacza liniowość modelu matematycznego? zależność funkcyjna pomiędzy zmiennymi decyzyjnymi posiada graficzną reprezentację w postaci prostych dotyczy to każdego wyrażenia w modelu matematycznym 45 Agenda Kluczowe elementy wykładu WPROWADZENIE Cel i zakres wykładu. PROBLEM PORTFELOWY Istota. Sformułowanie matematyczne. Rozwiązanie. Analiza rozwiązania ZADANIE PROGRAMOWANIA LINIOWEGO Uogólnienie zadania programowania liniowego (zpl). Cechy zpl PODSUMOWANIE Resume. Dyskusja 46 transporcie 23
Podsumowanie Przypomnienie kluczowych pojęć à Resume problem portfelowy (PP) rozwiązanie przykładowego PP - identyfikacja problemu - budowa modelu matematycznego - dobór metody i rozwiązanie - interpretacja rozwiązania i analiza wrażliwości uogólniony model zadania programowania liniowego definicja rozwiązań - rozwiązanie dopuszczalne rozwiązanie dla którego spełnione są wszystkie ograniczenia - rozwiązania niedopuszczalne rozwiązania znajdujące się poza obszarem rozwiązań dopuszczalnych - rozwiązanie optymalne (optimum) rozwiązanie dopuszczalne osiągające wartość ekstremalną - ograniczenie aktywne ograniczenie wyznaczające obszar rozwiązań dopuszczalnych - ograniczenie nieaktywne ograniczenie nie należące do obszaru rozwiązań dopuszczalnych 47 Podsumowanie Przypomnienie kluczowych pojęć à Resume przykłady obszarów rozwiązań dopuszczalnych Funkcja celu może przyjmować nieograniczone wartości Obszar rozwiązań dopuszczalnych jest pusty 48 transporcie 24
Podsumowanie Zapraszam do dyskusji i zadawania pytań Grafika: www.chemtrailsky.com 49 Tytuł: 01 Budowa portfela produktowego. Zastosowanie programowania liniowego Autor: Piotr SAWICKI Zakład Systemów Transportowych WMRiT PP piotr.sawicki@put.poznan.pl www.put.poznan.pl/~piotr.sawicki www.facebook.com/piotr.sawicki.put Przedmiot: Optymalizacja w transporcie Specjalność: LT, TD, TŻ Wersja: 2015.03.09 transporcie 25