Matematyczne techniki zarządzania - 211 Jak to wszystko zrealizować matematycznie? — patrz skrypt, s. 186-191 Kłopoty matematyczne biorą się z tego, że mamy więcej zmiennych (niewiadomych) niż równań warunki ograniczające ze zmiennymi swobodnymi dołączona funkcja celu z jej wartością x0 2 x1 4 x2 1 x3 3 x1 3 x2 14 1 x4 26 1 x0 5 x1 8 x2 0 x3 0 x4 0 Jedynym sposobem rozwiązania tego układu jest rachunek iteracyjny, polegający na wielokrotnym zakładaniu, że zmienne występujące we wszystkich równaniach są równe zero, przez co otrzymamy niezerowe wartości pozostałych zmiennych. Mysz w tym momencie znajduje się na początku układu współrzędnych: Z(X) = x0 = 0 Przejście do następnego wierzchołka to zmiana bazy, co wymaga podjęcia dwu decyzji: BAZA 0 x3=14 x4=26 x0= 0 x1=0 x2=0 ZMIENNE BAZOWE ZMIENNE NIEBAZOWE • którą zmienną wprowadzić do bazy, a którą z niej wycofać (dla myszy to decyzja — którą krawędzią się poruszać) Tablica simpleksowa • jaką wartość przyjąć dla zmiennej wprowadzanej do bazy, aby maksymaSkrypt, s.188 lnie poprawić Z(X), a równocześnie nie wyjść poza obszar rozwiązań dopuszczalnych (dla myszy to decyzja — jak iść aby nie minąć wierzchołka) Matematyczne techniki zarządzania - 212 Zmiana bazy polega na wymianie tylko jednej zmiennej, czyli na zmianie na wierzchołku kierunku marszu ku rozwiązaniu optymalnemu. Po wyznaczeniu tych decyzji, układ równań BAZA 0 BAZA 1 BAZA 2 BAZA 3 przekształca się (przez ich mnożenie i dodawanie) tak, aby zmienRachunek iteracyjny kończy się w momencie, gdy z ne bazowe występowadołączonej funkcji celu wynika, że nie ma już możły tylko w jednym równaniu. liwości poprawy wartości funkcji celu. Baza zdegenerowana: baza, w której pojawiło się przypadkowe zero ZAGADNIENIE DUALNE SYMETRYCZNE Zagadnienie pierwotne Z ( X ) c j x j max • nowa zmienna dualna yi • odwrócenie kierunku optymalizacji aij x j bi • zamiana cj oraz bi miejscami xj 0 • zmiana kierunku nierówności • transponowanie macierzy A Zagadnienie dualne Z (Y ) bi yi min a ji yi c j yi 0 max Z ( X ) min Z (Y ) Zagadnienie dualne (zagadnienia dualnego) = zagadnienie pierwotne Rozwiązując jedno z nich rozwiązujemy równocześnie drugie, czasem wygodniej jest rozwiązywać dualne zamiast pierwotnego Matematyczne techniki zarządzania - 213 Ekonomiczna interpretacja zmiennych dualnych yi Są to ceny dualne środków produkcji określające jaki dodatkowy zysk może przynieść firmie dodatkowa jednostka i-tego środka. W każdym warunku ograniczającym występuje nierówność , co oznacza, że dany środek (surowiec, robocizna, czas pracy maszyn) może być przy rozwiązaniu optymalnym albo wykorzystany całkowicie (=), albo tylko częściowo (<). Stopień wykorzystania i-tego środka produkcji poznajemy po wartości zmiennej swobodnej (plansza 207). 1. Środek produkcji wyczerpany w rozwiązaniu optymalnym 3 x1 6 x2 x3 25 =0 Zmienna dualna związana z tym środkiem ma wartość , gdyż sprowadzenie nowej jednostki tego środka pozwoli zwiększyć produkcję, co da dodatkowy zysk równy yi 2. Środek produkcji niewyczerpany w rozwiązaniu optymalnym 6 x1 2 x2 x4 42 =8 Zmienna dualna związana z tym środkiem ma wartość 0, gdyż tego środka jest już teraz w nadmiarze i sprowadzenie nowej jego jednostki nic w firmie nie zmieni — ani wielkości produkcji, ani zysku A jaka będzie interpretacja zmiennej dualnej dla mieszanki? Matematyczne techniki zarządzania - 214 ANALIZA WRAŻLIWOŚCI W PROGRAMOWANIU LINIOWYM Co będzie, jeśli... Bada się reakcję X (rozwiązania optymalnego) na zmianę A, B, C (założeń) PROGRAMOWANIE PARAMETRYCZNE 1. Skutki zmiany funkcji celu (macierzy C) Funkcja celu 3 x1 5 x2 max C [3, 5] • xj nie ma w ostatniej bazie w rozwiązaniu optymalnym, czyli xj = 0 WYRÓB j-TY NIE JEST PRODUKOWANY W ROZWIĄZANIU OPTYMALNYM — DLACZEGO? PONIEWAŻ JEGO RENTOWNOŚĆ JEST ZA NISKA W PORÓWNANIU Z INNYMI Wnioski: — obniżenie zysku jednostkowego cj nie zmieni rozwiązania optymalnego, gdyż j-ty wyrób w dalszym ciągu będzie nierentowny — zwiększenie zysku jednostkowego może zmienić rozwiązanie optymalne, gdyż j-ty wyrób może (jeśli przekroczymy pewną wartość cj) stać się bardziej opłacalny niż inne wyroby Pytanie: o ile najwięcej (pj) może wzrosnąć cj, aby rozwiązanie optymalne nie uległo zmianie? Przykład odpowiedzi: p2<0,4286 Interpretacja: dopóki c2<5,4286, wyrób 2 nie powinien wchodzić do produkcji Matematyczne techniki zarządzania - 215 • zmienna xj znajduje się w ostatniej bazie, czyli xj>0 WYRÓB j-TY JEST PRODUKOWANY W ROZWIĄZANIU OPTYMALNYM — DLACZEGO? PONIEWAŻ JEGO RENTOWNOŚĆ JEST WYŻSZA W PORÓWNANIU Z INNYMI Wnioski: — obniżenie zysku jednostkowego cj może zmienić rozwiązanie optymalne, gdyż j-ty wyrób może stać się nierentowny (po zejściu poniżej pewnej granicy) — zwiększenie zysku jednostkowego może zmienić rozwiązanie optymalne, gdyż j-ty wyrób może (jeśli przekroczymy pewną wartość cj) stać się jeszcze bardziej opłacalny niż dotychczas Pytanie: o ile (pj) może zmaleć lub wzrosnąć cj, aby rozwiązanie optymalne nie uległo zmianie? Przykład odpowiedzi: —0,6<p1<2,2 Interpretacja: dopóki 2,4<c1<5,2, wyrób 1 powinien być produkowany w ilości x1 wyznaczonej przez rozwiązanie optymalne 2. Skutki zmiany wektora ograniczeń (macierzy B) 3 x1 6 x2 48 Każda zmiana (w pewnych granicach) ilości środków produkcji zmienia wartość funkcji celu Analizę wrażliwości na B przeprowadza się z uwzględnieniem: — zmiany struktury asortymentowej wyrobów (które wyroby się produkuje) oraz osobno szczegółów produkcji (ile się produkuje) — ceny dualnej środków: czy dany środek jest wyczerpany w rozwiązaniu optymalnym, czy nie wyczerpany Matematyczne techniki zarządzania - 216 3. Skutki zmiany współczynników technologicznych (macierzy A) • wprowadzenie nowego wyrobu 3 x1 6 x2 48 4 x1 1 x2 25 x3 3 x1 6 x2 3 x3 48 4 x1 1 x2 5 x3 25 Pytanie: ile musi wynosić c3, aby rozwiązanie optymalne uległo zmianie, czyli aby wyrób trzeci wszedł do produkcji? Przykład odpowiedzi: jeśli c3>14, wyrób trzeci wejdzie do produkcji • zmiana technologii produkcji Zagadnienie skomplikowane a12 6 a12 4 POMIJAMY DUŻE PROFESJONALNE PROGRAMY KOMPUTEROWE UMOŻLIWIAJĄ ANALIZOWANIE WRAŻLIWOŚCI ROZWIĄZANIA OPTYMALNEGO NA RÓWNOCZESNĄ ZMIANĘ KILKU CZYNNIKÓW WIĘCEJ INFORMACJI O ANALIZIE WRAŻLIWOŚCI W SKRYPCIE (ROZDZIAŁ 7) WYDRUK Z PROGRAMU QSB+ ZAWIERA DUŻO ELEMENTÓW ANALIZY WRAŻLIWOŚCI Matematyczne techniki zarządzania - 217Przy interpretacji wydruku WYDRUK Z PROGRAMU QSB+ CZĘŚĆ PIERWSZA Numer zmiennej decyzyjnej Rozwiązanie (optymalne wartości zmiennych decyzyjnych) numer wyrobu ilości produkowanych wyrobów numer składnika mieszanki ilości użytych składników Number 1 2 obowiązuje podwójny język: • matematyczny • ekonomiczny (menedżerski) Nazwa projektu Summarized Report for...................... Variable Solution Opportunity Objective Minimum Cost Coefficient Obj. Coeff. X1 +2,0 0 +30,0 0 X2 +6,0 0 +50,0 +20,0 Max (Min) Obj = .... Iteration = .... Elapsed CPU Second = ...... Maximum Obj. Coeff. +75 +Infinity Optymalna wartość funkcji celu maksymalny zysk producenta minimalny koszt mieszanki Koszty alternatywne (względne) O ile trzeba zmienić współczynnik funkcji celu, aby wyrób (składnik) wszedł do rozwiązania optymalnego (w przykładzie = 0, gdyż ilości są różne od zera) Liczba iteracji wykonanych przez komputer Współczynniki funkcji celu (macierz C) Optymalne zakresy współczynników funkcji celu zyski jednostkowe z wyrobów przedziały zysku jednostkowego nie powodujące zmiany planu produkcji ceny składników mieszanki Czas szukania optymalnego rozwiązania przedziały ceny składników nie powodujące zmiany receptury mieszanki Matematyczne techniki zarządzania - 218Przy interpretacji wydruku WYDRUK Z PROGRAMU QSB+ CZĘŚĆ DRUGA Numer ograniczenia (warunku) numer środka produkcji numer komponentu mieszanki Constraint 1 2 3 obowiązuje podwójny język: • matematyczny • ekonomiczny (menedżerski) Ograniczenia (macierz B) z nierównością ilości posiadanych środków produkcji najmniejsze dopuszczalne ilości komponentów (normy) Summarized Report for ....... Status RHS Shadow Slack or Min RHS Price Surplus ( ) Loose 0 +2,0 +2,0 +4,0 ( ) +12,0 Tight 15 0 +6,0 ( ) Tight 10 0 +12,0 +18,0 Max (Min) Obj = ...... Iteration = ...... Elapsed CPU Second = ...... Sposób spełniania nierówności z warunków ograniczających (loose = nierówność silna, tight = nierówność słaba) loose = środek produkcji jest w nadmiarze; tight = środek produkcji wyczerpany loose = komponent jest w nadmiarze; tight = komponentu jest dokładnie według wymagań normy Ceny dualne Luz czyli nadmiar dodatkowy zysk z dodatkowej jednostki środka ilość niewyczerpanego środka produkcji zmiana kosztu mieszanki po zmniejszeniu normy o jednostkę ilość komponentu ponad normę Max RHS +Infinity +18 +24 Wartości zakresów ograniczeń (macierzy B), w których wartość optymalna funkcji celu zmienia się zgodnie z cenami dualnymi zakresy dla ilości środka produkcji zakresy dla ilości komponentu mieszanki Matematyczne techniki zarządzania - 219 ZAST0SOWANIA PROGRAMOWANIA LINIOWEGO • planowanie produkcji •ile i czego ile i jaką metodą •ile i z czego •ile i kiedy JEST TO METODA UNIWERSALNA PRAWIE WSZYSTKO MOŻNA ZAPISAĆ JAKO MODEL PROGRAMOWANIA LINIOWEGO • optymalizacja strategii rozwoju koncernu • optymalizacja rozwoju branż gospodarki narodowej • optymalizacja strategii reklamowej • optymalizacja przepływów w sieciach • optymalizacja kontraktacji w rolnictwie SETKI ZADAŃ W KSIĄŻCE WAGNERA BADANIA OPERACYJNE • zagadnienia dowozu i przewozu (autobusy, lotnictwo) • zagadnienia techniczne: projektowanie, cięcie, rozkrój • harmonogramy dyżurów, plany zajęć • teoria gier UMIEJĘTNOŚĆ INTERPRETACJI WYDRUKU Z PROGRAMOWANIA LINIOWEGO TO MINIMUM WIEDZY STUDENTA Matematyczne techniki zarządzania - 220 KLASYCZNE ZAGADNIENIE TRANSPORTOWE DOSTAWCY ODBIORCY O2 O1 D1 D2 POPYT c11 c21 x11 c12 x21 c22 b1 x11 x12 x13 a1 x13 x23 a1 a2 b3 Twierdzenia związane z KZT ZAGADNIENIE MOŻE BYĆ OTWARTE LUB ZAMKNIĘTE MODEL ai b j ai b j Zagadnienie otwarte sprowadza się do zamkniętego przez wprowadzenie fikcyjnego dostawcy lub odbiorcy x13 x 23 b3 x11 , x12 ,..., x 23 0 x12 c13 x22 c23 1. x 21 x22 x 23 a2 x12 x 22 b2 O3 b2 Z ( X ) c11 x11 c12 x12 ... c23 x23 min x11 x 21 b1 PODAŻ 2. JEŚLI DANE SĄ LICZBAMI CAŁKOWITYMI, TO KZT MA CO NAJMNIEJ JEDNO ROZWIĄZANIE CAŁKOWITOLICZBOWE CAŁKOWITOLICZBOWOŚĆ 3. JEŚLI ISTNIEJĄ DWA ROZWIĄZANIA OPTYMALNE, MOŻNA TWORZYĆ NOWE JAK PRZY PROGRAMOWANIU LINIOWYM Matematyczne techniki zarządzania - 221 ROZWIĄZANIE OPTYMALNE NIE ULEGNIE ZMIANIE, JEŚLI NA MACIERZY ODLEGŁOŚCI C WYKONAMY: 4. • mnożenie (dzielenie) całej macierzy przez stałą (zmiana skali liczb) • dodawanie (odejmowanie) stałej do pojedynczych wierszy i kolumn (tworzenie klatek zerowych) UZYSKANE W TEN SPOSÓB NOWE ODLEGŁOŚCI NAZYWAMY PSEUDOODLEGŁOŚCIAMI METODA KLATEK ZEROWYCH Przykład 47. Znajdź metodą klatek zerowych optymalny plan rozwozu konserw rybnych z czterech portów do pięciu miast w głębi kraju. Odległości podano w km, a podaż i popyt w postaci liczby kontenerów. Gdynia Ustka Kołobrzeg Szczecin Częstochowa 482 631 559 482 15 Funkcja celu Kraków 621 747 631 641 30 Wrocław 499 504 432 353 15 Z ( X ) cij xij min i j Toruń 210 311 347 340 14 Kielce 651 780 691 678 8 36 7 12 27 (w kontenero-kilometrach) Zmienna decyzyjna xij określa ile kontenerów trzeba przewieźć od i-tego dostawcy do j-tego odbiorcy, tak aby jak najmniejszym kosztem wywieźć konserwy z portów do odbiorców zgodnie z ich zapotrzebowaniem. TO ZAGADNIENIE JEST ZAMKNIĘTE! Matematyczne techniki zarządzania - 222 ETAP 1. Wprowadzenie zer do kolumn przez odjęcie najmniejszych odległości • od elementów kolumny 1 odejmujemy 482 • od elementów kolumny 2 odejmujemy 621 • od elementów kolumny 3 odejmujemy 353 • od elementów kolumny 4 odejmujemy 210 Przewozy ulokujemy w klatkach zerowych • od elementów kolumny 5 odejmujemy 651 Gdynia Ustka Kołobrzeg Szczecin Częstochowa 0 149 77 0 15 Kraków 0 126 10 20 30 Wrocław 146 151 79 0 15 Toruń 0 101 137 130 14 Dążymy do tego, aby klatka zerowa była w każdej kolumnie i w każdym wierszu Kielce 0 129 40 27 8 36 7 12 27 ETAP 2. Wprowadzenie zer do wierszy przez odjęcie najmniejszych odległości (wiersz 2: 101, wiersz 3: 10) Gdynia Ustka Kołobrzeg Szczecin Częstochowa 0 48 67 0 15 Kraków 0 25 0 20 30 Wrocław 146 50 69 0 15 Toruń 0 0 127 130 14 Kielce 0 28 30 27 8 36 7 12 27 Matematyczne techniki zarządzania - 223 ETAP 3. Ulokowanie przewozów w klatkach zerowych Czynność tę można rozpocząć od dowolnej decyzji, byle ona mogła być jednoznaczna; gdzie wywieźć kontenery z Gdyni lub ze Szczecina — nie można teraz ustalić, ale można to ustalić dla Ustki i Kołobrzegu Gdynia Ustka Kołobrzeg Szczecin Dec. 1: Częstochowa 0 3 48 67 0 12 15 Kraków 0 18 25 0 12 20 30 Wrocław 146 50 69 0 15 15 7 kontenerów z Ustki do Torunia Dec. 2: 12 kontenerów z Kołobrzegu do Krakowa Toruń 0 7 0 7 127 130 14 Dec. 4: 15 kontenerów ze Szczecina do Wrocławia 7 kontenerów z Gdyni do Torunia Dec. 6: 8 kontenerów z Gdyni do Kielc Dec. 7: 3 kontenery z Gdyni do Częstochowy Dec. 8: 12 kontenerów ze Szczecina do Częstochowy 8 36 7 12 27 ROZWIĄZANIE OPTYMALNE Dec. 3: 18 kontenerów z Gdyni do Krakowa Dec. 5: Kielce 0 28 30 27 8 X 3 18 0 7 8 0 0 0 7 0 0 12 0 0 0 12 0 15 0 0 DECYZJE PODEJMOWANE W SPOSÓB PRZYPADKOWY DAWAŁY WYNIKI WYŻSZE 0 5-10% MINIMALNA WARTOŚĆ FUNKCJI CELU Z ( X ) 3 482 18 621 0 499 ... 15 353 0 340 0 678 40.130 kkm Matematyczne techniki zarządzania - 224 INNE METODY „RĘCZNE” • metoda Forda-Fulkersona (tworzenie dalszych klatek zerowych) • metoda kąta północno-zachodniego (metoda węgierska) SIMPLEKS TRANSPORTOWY (PROGRAMOWANIE LINIOWE) D1 D2 D3 2 1 5 O1 x11 x21 x31 7 3 0 8 02 x12 x22 x32 5 03 11 x13 6 x23 15 x33 3 04 x14 x24 x34 2 7 1 9 JAK TO PRZEKSZTAŁCIĆ W PROGRAMOWA -NIE LINIOWE? 6 1 10 TYPOWA TABELKA PROGRAMOWANIA LINIOWEGO x1 x11 1 x2 x12 1 x3 x13 1 x4 x14 1 1 x5 x21 x6 x22 1 1 3 Gdzie są i jak powstały macierze A, B i C? 11 x9 x31 x10 x32 x11 x33 x12 x34 1 2 1 1 1 1 y1 y4 1 1 x8 x24 To zadanie łatwiej rozwiązać zagad1 wykorzystując 1 nienie dualne asymetryczne 1 1 2 x7 x23 itd . 1 1 1 7 1 0 6 1 1 1 5 8 15 1 9 = = 6 = 1 = 10 = 7 = 5 = 3 = 2 MIN Jak się mają do siebie macierze zagadnienia transportowego i macierze programowania liniowego? Matematyczne techniki zarządzania - 225 Klasyczne zagadnienie transportowe ma wiele wersji i zastosowań, często do zadań nie mających nic wspólnego z przewozami Możliwe jest wprowadzenie ograniczeń na przepustowość poszczególnych tras ZAGADNIENIE PRZYDZIAŁU Polega na takim rozdzieleniu n zadań pomiędzy n wykonawców, aby łączny efekt był jak najkorzystniejszy (znamy nakład cij potrzebny i-temu wykonawcy do wykonania j-tego zadania) Jeden wykonawca może otrzymać tylko jedno zadanie Przykłady zagadnienia przydziału xij uij MATEMATYCZNIE JEST TO SZCZEGÓLNY PRZYPADEK KZT Z1 Z2 Z3 Z4 W1 0 0 0 1 W2 1 0 0 0 • asystent ma 15 tematów dla 15 studentów i wie jaką notę otrzyma każdy student z każdego tematu; celem będzie taki przydział, aby w sumie grupa uzyskała jak najwyższą ocenę • kierownik ma 6 obrabiarek i 6 zadań obróbczych do wykonania; jeśli wie ile trwa każde zadanie na każdej obrabiarce, może tak je przydzielić, aby wszystkie zadania zostały wykonane w jak najkrótszym czasie • jeśli istnieje kolejność obróbki — problem szeregowania ZWYKLE DOTYCZY PRODUKCJI W3 0 0 1 0 W4 0 1 0 0 min cij xij i j max n n n xij 1 i n xij 1 j xij 0, 1 Matematyczne techniki zarządzania - 226 ANALIZA SIECIOWA • sieć to uniwersalne narzędzie (można przy jej użyciu rozwiązywać wiele problemów nie mających żadnej „siatki”) JAK RYSOWAĆ SIEĆ? • długości i kąty łuków nie mają żadnego znaczenia • rozróżniamy sieci cykliczne i acykliczne • rozwiązanie sieci polega na znalezieniu: • ręcznie • najkrótszej drogi • programowanie liniowe • najdłuższej drogi • programowanie dynamiczne • metody rozwiązywania sieci • profesjonalne programy komputerowe Szukanie najkrótszej drogi (zagadnienie dyliżansu) c 21 1 c27 2 c23 c72 c32 c31 3 c34 c 43 c41 4 c51 c 45 c54 5 Przykład 48 7 c73 c76 c64 c65 6 c87 c86 c85 8 Cij km (mile) godziny złotówki cij 0 ( ) cij c ji Matematyczne techniki zarządzania - 227 Programowanie liniowe — sieć jest szczególnym przypadkiem zagadnienia przydziału: • zmiennych decyzyjnych jest tyle, ile jest łuków: 1 — iść łukiem, 0 — nie iść łukiem • warunków ograniczających jest tyle, ile jest węzłów; mamy ich trzy rodzaje: • węzeł początkowy: prawa strona = 1 • węzeł pośredni: prawa strona = 0 • węzeł końcowy: prawa strona = —1 • wyjście z węzła: +1 • przyjście do węzła: —1 C Przykład 48 cd. DO W Ę Z Ł A 8 7 6 5 4 3 2 7 c87 x87 6 c86 x86 c76 x76 5 c85 x85 WĘZŁA 4 3 c73 x73 c65 x65 1 1 c32 x32 c23 x23 1 1 c72 x72 c43 x43 c34 x34 1 2 c64 x64 c54 x54 c45 x45 c27 x27 1 A B • współczynniki technologiczne: Z X 1 c51 c41 c31 c21 x51 x41 x31 x21 1 1 1 1 1 1 1 1 Matematyczne techniki zarządzania - 228 Model decyzyjny c87 x87 c86 x86 c85 x85 ... c27 x27 c23 x23 c21 x21 min w .8 : 1 x87 1 x86 1 x85 1 w .7 : 1 x76 1 x73 1 x72 1 x87 1 x72 0 ...................................... w .1 : 1 x51 1 x41 1 x31 1 x21 1 Z tych danych możne ułożyć klasyczną tabelkę programowania liniowego Model ten można łatwiej rozwiązać przez wykorzystanie asymetrycznego zagadnienia dualnego Ogólna postać modelu najkrótszej drogi w sieci 1 x kj x ik 0 ( w sieci ) ( w sieci ) 1 cij x ij min ( w si eci ) x ij 0 lub 1 ( w sieci ) Matematyczne techniki zarządzania - 229 Szukanie najdłuższej drogi (metoda ścieżki krytycznej — CPM) Przykład 49. Zorganizować budowę domu w jak najkrótszym czasie Symbol A B C D E F G H I J K L M N Nazwa czynności Sprowadzenie cegieł Sprowadzenie dachówek Wykonanie fundamentów Budowa murów Położenie dachu Budowa ścieków Wyk. instalacji elektrycznej Tynkowanie Wyk. inst. wodno-kanal. Położenie podłóg Niwelacja ogrodu Malowanie i czyszczenie Montaż stolarki Założenie ścieżek Razem Czas (dni) 5 12 7 10 4 7 10 6 12 5 2 6 2 2 90 5 B 1 5 C 3 2 6 G 0 D 10 F 7 8 M2 5 10 L 10 6 4 0 0 7 7 4 J 12 A H E 6 K I 12 11 N 2 2 9 KTÓRĘDY PROWADZI NAJDŁUŻSZA DROGA W TEJ SIECI I JAKA JEST JEJ DŁUGOŚĆ? Ścieżka krytyczna prowadzi przez węzły 1 - 2 - 3 - 4 - 6 -7 - 8 - 10 - 11 i ma długość wynoszącą 43 dni. Czynności krytyczne (bez zapasu czasu): C, D, I, H, M, L Czynności niekrytyczne (z zapasem czasu): A, B, E, F, G, J, N, K Matematyczne techniki zarządzania - 230 Istnieje wiele rodzajów zapasu czasu i wiele metod jego obliczania Wszystkie one bazują na danych: xi, xj, yi, yj 17 i xi 25 5 B yi Xi — najwcześniejszy możliwy moment wystąpienia danego zdarzenia yi — najpóźniejszy dopuszczalny moment wystąpienia danego zdarzenia Zapasy czasu 0 1 7 17 0 A 7 D 17 3 4 10 0 0 5 C 7 2 35 29 E H 7 4 35 6 J 12 0 29 F G 6 17 7 17 5 10 6 37 K I 2 N 2 9 19 41 • dla czynności G: 2 dni • dla czynności J: 3 dni 43 L 37 10 12 7 7 8 M2 Wnioski dla kierownictwa • dla czynności B: 13 dni • jak negocjować termin i cenę • dla czynności E: 8 dni • których prac pilnować szczególnie • dla czynności N: 24 dni • jak reagować na zakłócenia • dla czynności K: 24 dni • analiza wrażliwości 43 11 Matematyczne techniki zarządzania - 231 Metoda PERT PODSUMOWANIE Czasy wszystkich lub niektórych czynności są zmiennymi losowymi, danymi np. przez • całe przedsięwzięcie dzieli się na pojedyncze czynności t1 (1%), t2, t3 (1%) Jak liczymy? Dla każdej czynności 1 E ( t ) ( t1 4t 2 t 3 ) 6 1 ( t ) ( t 3 t1 ) 6 Znajdujemy ścieżkę krytyczną i dla niej liczymy parametry czasu realizacji całego przedsięwzięcia E (T ) E ( t ) sc . kr . 2 (T ) 2 ( t ) sc . kr . • ustala się techniczną kolejność czynności • ustala się czas realizacji poszczególnych czynności • buduje się sieć, w której czynności to łuki, a węzły to momenty czasu (zdarzenia, sytuacje) • sieć musi mieć jeden początek i jeden koniec • dwa zdarzenia mogą być połączone tylko jednym łukiem, trzeba więc wprowadzać czynności puste • szuka się najdłuższej drogi w sieci, co daje optymalne rozwiązanie problemu • problem najdłuższej drogi można także sprowadzić do programowania liniowego (prawe strony: = —1, 0, +1) Matematyczne techniki zarządzania - 232 Inny przykład problemu sieciowego Planowanie zatrudnienia w dużym przedsiębiorstwie o zmiennym (sezonowym zapotrzeowaniu na siłę roboczą DANE okresy: 1, 2, ..., i, j, ..., n Ri — zapotrzebowanie na siłę roboczą w i-tym okresie cij — koszt rekrutacji jednego pracownika w i-tym okresie i utrzymania go w pracy do okresu j-tego ZMIENNA DECYZYJNA FUNKCJA CELU xij — liczba pracowników przyjęta do pracy w i-tym okresie i zwolniona z niej w okresie j-tym cij xij min WARUNKI OGRANICZAJĄCE — bilanse pracowników zatrudnionych w i-tym okresie PROGRAMOWANIE DYNAMICZNE Polega ona na podziale dużego problemu optymalizacyjnego na szereg mniejszych problemów rozwiązywanych po kolei (etapami) oddzielnie Zasada Bellmana ETAP 1 Si-1— stan układu na początku etapu ETAP 2 ETAP i Si — stan układu na końcu etapu S0 dec . S1 dec . S2 ............ Si 1 dec . Si ......... x x x 1 2 i Matematyczne techniki zarządzania - 233 Zasada Bellmana głosi, że decyzja podejmowana w i-tym etapie jest wyłącznie funkcją stanu układu (systemu) na początku tego etapu i nie jest zależna od sposobu dojścia do tego stanu x i f ( S i 1 ) NIE ROZPATRUJEMY NIGDY ETAPÓW WCZEŚNIEJSZYCH S i f i ( S i 1 , x i ) Funkcja celu Zastosowania programowania dynamicznego • rozwiązywanie sieci • sterowanie zapasami • zagadnienia wieloetapowe • alokacja kapitału • problemy techniczne • zagadnienie plecaka • programowanie nieliniowe • wymiana urządzeń W trakcie rozwiązywania zadań stosuje się indukcję odwrotną ROZWIĄZANIE OGÓLNE ETAP OSTATNI 1 n ROZWIĄZANIE SZCZEGÓŁOWE ETAP PIERWSZY Matematyczne techniki zarządzania - 234 Szukanie najkrótszej drogi (zagadnienie dyliżansu) Przykład 50. Znajdź metodą programowania dynamicznego najkrótszą drogę z węzła 8 do węzła 1. Funkcja celu (stan systemu) f1 0 f 2 min( c21 f1 ) min(1 0) 1 f3 f4 f5 f6 min(c31 min(c41 min(c51 min(c64 1 4 1 meta 4 6 fi = min Cij f1 ; c32 f 2 ) min(4 0; 1 1) 2 km (mile) f1 ; c43 f 3 ) min(4 0; 1 2) 3 godziny f1 ; c54 f 4 ) min(6 0; 2 3) 5 złotówki f 4 ; c65 f 5 ) min( 3 3; 2 5) 6 f 7 min(c72 f 2 ; c73 f 3 ; c76 f 6 ) 8 2 min(8 1; 6 2; 1 6) 7 7 6 1 f 8 min(c85 f 5 ; c86 f 6 ; c87 f 7 ) 1 3 min(6 5; 4 6; 1 7) 8 1 1 3 6 Wracamy „żółtymi śladami” 4 4 2 najkrótsza droga: 8 - 7 - 6 - 4 - 3 - 2 - 1 6 2 8 jej długość wynosi 8 mil start 5 Matematyczne techniki zarządzania - 235 Rozwiązanie matematyczne: x87 x76 x64 x43 x32 x21 1 INTERPRETACJA min Z ( X ) f 8 8 fi 1. Minimalna wartość funkcji celu po i-tym etapie (badania operacyjne) 2. Stan systemu po i-tym etapie (programowanie dynamiczne) 3. Najkrótsza droga z i-tego węzła do węzła końcowego „1” Zadanie zostało rozwiązane przy użyciu modelu f i min( cij f j ) i j RÓWNANIE REKURENCYJNE Wada programowania dynamicznego: nie ma uniwersalnego modelu i do każdego problemu trzeba budować oddzielny model Sterowanie zapasami wyrobów gotowych Przykład 51. Zoptymalizować wielkość zapasów wyrobów gotowych w fabryce Niezawodny dostawca (wg książki Wagnera) Dane: wielkość produkcji xt: od 0 do 5 sztuk pojemność magazynu it: 4 sztuki popyt miesięczny stały dt: 3 sztuki Matematyczne techniki zarządzania - 236 Kryterium decyzyjne: fi = min(koszty produkcji + koszty magazynowania) Koszty produkcji: c( xt ) b axt 13 2 xt Koszty magazynowania: c(it ) ait 1it Czas analizy: 6 miesięcy — od I do VI xt 0 c( xt ) 0 xt c(xt) 0 0 1 15 2 17 3 19 4 21 5 23 numerujemy miesiące wstecz: lipiec = 0, czerwiec =1 itd. LIPIEC n=0 t=0 i0 = 0 f0 0 na koniec czerwca magazyn ma być pusty CZERWIEC n=1 t =1 i1 0 1 2 3 nie ma kosztów magazynowania, ale są 4 możliwości, jeśli chodzi o sposób pokrycia czerwcowego zapotrzebowania (różny udział produkcji czerwcowej i zapasów z maja); stan zapasów na początku czerwca: 0, 1, 2, 3 x1(ii) 3 2 1 0 f1(i1) 19 17 15 0 x1 to decyzja wyznaczająca wielkość produkcji w czerwcu (x1+i1=3), natomiast f1 to skutek finansowy decyzji x1, zależny także od decyzji podjętych we wcześniejszych miesiącach, czyli od stanu na początku etapu 1-szego Matematyczne techniki zarządzania - 237 MAJ Teraz mogą wystąpić koszty magazynowania, posłużymy się więc równaniem rekurencyjnym n=2 f t min ( k . prod . k .mag . f t 1 ) t=2 x skutki decyzji bieżącej stan na początku etapu t stan zapasów na początku maja 19=koszty produkcji; 0=koszty magazynowania; 19 z tabelki dla czerwca i2 x2 0 1 2 3 4 0 0+0+19 0+1+17 1 15+0+19 15+1+17 15+2+15 2 17+0+19 17+1+17 17+2+15 17+3+0 3 19+0+19 19+1+17 19+2+15 19+3+0 4 21+1+17 21+2+15 21+3+0 5 23+2+15 23+3+0 x2(i2) 3 5 4 0 0 f2(i2) 38 26 24 19 18 Szukamy dla każdego wiersza takiej decyzji x2, która da najmniejszą wartość f2 kosztów działalności przedsiębiorstwa w maju i czerwcu łącznie KWIECIEŃ n=3 MARZEC n=4 LUTY n=5 STYCZEŃ n=6 Po zakończeniu wszystkich obliczeń otrzymamy następujące rozwiązanie ogólne (model) minimalizacji kosztów działalności przedsiębiorstwa przez wybór optymalnej wielkości produkcji ROZWIĄZANIE OGÓLNE Matematyczne techniki zarządzania - 238 i TEN MODEL TEŻ JEST SIECIĄ 0 1 2 3 4 n=1 x1 3 2 1 0 n=6 i6 0 VI f1 19 17 15 0 n=2 x2 3 5 4 0 0 V f2 38 26 24 19 18 n=3 x3 4 5 4 0 0 n=5 x6 3 i5 0 x6 2 i6 1 x 6 3 IV f3 48 45 43 38 27 i5 1 x6 5 i6 3 itd... n=5 x5 5 5 4 0 0 II f5 79 74 72 67 65 n=6 x6 4 5 4 0 0 I f6 96 93 91 79 75 x5 3 ROZWIĄZANIE SZCZEGÓŁOWE i4 0 x5 2 i4 1 x6 4 i6 2 III f4 67 64 54 48 46 n=4 x5 1 x6 4 n=4 x4 3, 4 5 5 0 0 i6 2 itd... Znajdziemy je dla i6 = 3, tj. dla założenia, że stan zapasów na początku stycznia wynosi 3 sztuki Szukamy najkrótszej drogi w tej sieci od zaznaczonego węzła do węzła końcowego, tj. takiej strategii produkcji wyrobów, która odpowiada minimalnym kosztom działalności przedsiębiorstwa DECYZJA Z MODELU 79 i6 3 x6 0 k0 Matematyczne techniki zarządzania - 239 79 i5 0 54 x5 5 k 23 2 25 i4 2 27 x4 5 k 23 4 27 i3 4 26 x3 0 i2 1 k 1 n=6 n=5 n=4 n=3 n=2 STYCZEŃ LUTY MARZEC KWIECIEŃ MAJ OPTYMALNA DECYZJA 0 x2 5 k 23 3 26 i1 3 n=1 x1 0 k0 CZERWIEC 0 (optymalny plan produkcji) i0 0 dla założenia i6 = 3 n=0 X = [0 5 5 0 5 0] LIPIEC Podobnie można znaleźć optymalne rozwiązanie dla innych założeń odnośnie do zapasu wyrobów na początek stycznia Wzór rekurencyjny stosowany do tego zadania skutki decyzji bieżącej stan na początku etapu t Koncentracja produkcji! Dlaczego? f t ( i ) min [C ( x ) 1( i x 3) f t 1 ( i x 3)] x 3 i x min5, 7 i dla t 2, 3,....,6 Wynika to z efektu skali! Matematyczne techniki zarządzania - 240 xi 1 2 3 4 5 C(xi) 15 17 19 21 23 ANALIZA WRAŻLIWOŚCI kjedn 15,00 8,50 6,33 5,25 4,60 • horyzont planowania • zapas początkowy • pojemność magazynu • zdolność produkcyjna • popyt Optymalny rozdział nakładów inwestycyjnych Przypomnienie: należy rozdzielić kwotę K pomiędzy n obiektów o efektywności qi(xi), gdzie xi — kwota przydzielona i-temu obiektowi, tak aby łączny efekt z kwoty K był możliwie jak największy Rozwiązanie ogólne K x1 x2 x3 K x2 x1 Funkcje efektywności poszczególnych obiektów Równanie rekurencyjne (funkcje celu) 1 x3 3 2 q1 ( x1 ) f1 K [ x1 x2 ] q2 ( x2 ) f2 q3 ( x3 ) f3