• Nie Znaleziono Wyników

Index of /rozprawy2/10260

N/A
N/A
Protected

Academic year: 2021

Share "Index of /rozprawy2/10260"

Copied!
231
0
0

Pełen tekst

(1)Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Wydział Inżynierii Mechanicznej i Robotyki. Rozprawa doktorska. Predyktywno-reaktywne harmonogramowanie produkcji z ograniczoną dostępnością zasobów. mgr inż. Marcin Klimek. Promotor: dr hab. inż. Piotr Łebkowski, prof. AGH. Kraków 2010.

(2) Promotorowi, Panu dr hab. inż. prof. AGH Piotrowi Łebkowskiemu, serdecznie dziękuję za cenne uwagi, udzieloną pomoc oraz poświęcony mi czas w trakcie realizacji niniejszej rozprawy..

(3) Spis treści Wykaz ważniejszych oznaczeń ..................................................................... 4 Wprowadzenie............................................................................................... 6 Teza rozprawy. Cel i zadania realizowane w pracy. ................................... 10 1 Harmonogramowanie w warunkach niepewności .................................. 13 1.1 1.2. Środowiska produkcyjne .................................................................................. 13 Niepewność w harmonogramowaniu zadań ..................................................... 14 1.2.1 Zakłócenia produkcyjne w harmonogramowaniu zadań ................................... 15 1.2.2 Harmonogramowanie stochastyczne ................................................................. 16 1.2.3 Harmonogramowanie rozmyte .......................................................................... 17. 1.3 1.4 1.5. Przegląd podejść do harmonogramowania w warunkach niepewności ............ 18 Harmonogramowanie dynamiczne ................................................................... 19 Harmonogramowanie predyktywne ................................................................. 20 1.5.1 1.5.2 1.5.3 1.5.4. 1.6 1.7. Techniki redundancji ......................................................................................... 22 Harmonogramowanie warunkowe..................................................................... 22 Tworzenie częściowo uporządkowanych harmonogramów .............................. 22 Analiza wrażliwości .......................................................................................... 23. Harmonogramowanie reaktywne ...................................................................... 23 Wskaźniki oceny w harmonogramowaniu predyktywno-reaktywnym ............ 26 1.7.1 1.7.2 1.7.3 1.7.4. Wskaźniki efektywności.................................................................................... 26 Wskaźniki stabilności ........................................................................................ 27 Wskaźniki odporności na zakłócenia ................................................................ 27 Wskaźniki kosztowe .......................................................................................... 27. 2 Harmonogramowanie projektu z ograniczoną dostępnością zasobów ... 28 2.1 2.2 2.3 2.4. Opis problemu harmonogramowania projektu z ograniczoną dostępnością zasobów z kamieniami milowymi .............................................. 28 Model matematyczny problemu ....................................................................... 30 Modele predyktywno-reaktywnego harmonogramowania projektu z ograniczonymi zasobami ............................................................................... 37 Modele predyktywno-reaktywnego harmonogramowania projektu z kamieniami milowymi ................................................................................... 38. 3 Harmonogramowanie nominalne ............................................................ 40 3.1 3.2 3.3 3.4. Algorytmy harmonogramowania nominalnego ................................................ 42 Harmonogramowanie na podstawie listy priorytetowej ................................... 43 Harmonogramowanie metodą wstawień .......................................................... 48 Algorytmy metaheurystyczne ........................................................................... 50 3.4.1 Algorytm symulowanego wyżarzania ............................................................... 50 3.4.2 Algorytm genetyczny ........................................................................................ 53. 3.5. Analiza obliczeniowa efektywności algorytmów harmonogramowania nominalnego ..................................................................................................... 56 3.5.1 Konstrukcja zadań testowych ............................................................................ 57. -1-.

(4) 3.5.2 Algorytmy priorytetowe .................................................................................... 59 3.5.3 Algorytmy wstawień ......................................................................................... 61 3.5.4 Algorytmy metaheurystyczne ............................................................................ 62. 3.6. Podsumowanie .................................................................................................. 67. 4 Odporna alokacja zasobów ..................................................................... 69 4.1 4.2. Opis problemu alokacji zasobów ...................................................................... 70 Miary odporności alokacji zasobów ................................................................. 74 4.2.1 Wybrane miary odporności stosowane w badaniach ......................................... 75 4.2.2 Miary odporności dla problemu harmonogramowania projektu z kamieniami milowymi .................................................................................... 77. 4.3. Algorytmy alokacji zasobów ............................................................................ 78 4.3.1 Wybrane algorytmy alokacji zasobów stosowane w badaniach ........................ 78 4.3.2 Algorytmy odpornej alokacji zasobów dla problemu harmonogramowania projektu z kamieniami milowymi ................................... 81. 4.4 4.5. Analiza obliczeniowa algorytmów odpornej alokacji zasobów ....................... 83 Podsumowanie .................................................................................................. 86. 5 Odporna alokacja buforów ...................................................................... 87 5.1 5.2. Estymacja czasów realizacji zadań projektowych ............................................ 88 Miary odporności harmonogramu .................................................................... 90 5.2.1 5.2.2 5.2.3 5.2.4. 5.3. Wybrane podejścia stosowane przy alokacji buforów ..................................... 95 5.3.1 5.3.2 5.3.3 5.3.4. 5.4. Miary odporności jakości harmonogramu ......................................................... 90 Miary odporności harmonogramu ..................................................................... 91 Złożone miary odporności ................................................................................. 93 Miary odporności dla problemu terminowej realizacji kamieni milowych ....... 93 Metoda łańcucha krytycznego oraz zarządzania buforami ................................ 96 Alokacja buforów przy zmiennych czasach trwania zadań ............................... 98 Alokacja buforów przy zmiennej dostępności zasobów.................................. 100 Algorytmy dokładne, algorytmy programowania całkowitoliczbowego ........ 103. Algorytmy alokacji buforów dla problemu terminowej realizacji kamieni milowych ........................................................................................................ 104 5.4.1 Algorytm wstawień buforów czasowych na podstawie listy priorytetowej .... 106 5.4.2 Algorytm wstawień buforów jednostkowych, w którym optymalizowane są statyczne miary odporności ......................................................................... 110 5.4.3 Algorytm iteracyjny, w którym wstawiane są bufory czasowe dla zadań z kolejnych etapów projektu............................................................................ 111. 5.5. Podsumowanie ................................................................................................ 112. 6 Harmonogramowanie reaktywne .......................................................... 114 6.1. Algorytmy stosowane w harmonogramowaniu reaktywnym ......................... 115 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5. 6.2 6.3. Harmonogramowanie na podstawie listy priorytetowej .................................. 116 Procedury próbkowania rozwiązań ................................................................. 117 Harmonogramowanie z oknem czasowym ...................................................... 117 Algorytmy lokalnych poszukiwań ................................................................... 118 Harmonogramowanie reaktywne przy czasowej niedostępności zasobów ..... 118. Harmonogramowanie reaktywne dla problemu dotrzymania terminów realizacji wszystkich etapów projektu ............................................................ 119 Analiza obliczeniowa algorytmów harmonogramowania predyktywnoreaktywnego .................................................................................................... 121. -2-.

(5) 6.3.1 Procedury losowego generowania zakłóceń czasów trwania zadań ................ 122 6.3.2 Wyniki eksperymentów przy różnych scenariuszach zakłóceń produkcyjnych ................................................................................................. 124. 6.4. Podsumowanie ................................................................................................ 138. 7 Analiza zastosowania praktycznego predyktywno-reaktywnego harmonogramowania projektu z kamieniami milowymi ...................... 139 7.1 7.2 7.3. Ryzyko a realizacja projektu .......................................................................... 139 Harmonogramowanie projektu w rzeczywistych systemach produkcyjnych ................................................................................................ 140 Wybrane zastosowania predyktywno-reaktywnego harmonogramowania projektu z kamieniami milowymi ................................................................... 143 7.3.1 Harmonogramowanie projektu tworzenia systemu informatycznego ............. 143 7.3.2 Harmonogramowanie projektu budowlanego, konstrukcyjnego ..................... 148. 7.4. Nowa aplikacja do planowania projektu z kamieniami milowymi ................ 150. 8 Podsumowanie pracy i kierunki dalszych badań .................................. 157 Załącznik 1. Zestawienie wyników obliczeń dla algorytmów harmonogramowania nominalnego ....................................................... 160 Załącznik 2. Zestawienie wyników obliczeń dla algorytmów harmonogramowania predyktywno-reaktywnego ................................ 180 Spis rysunków ........................................................................................... 209 Spis tabel ................................................................................................... 212 Literatura ................................................................................................... 212. -3-.

(6) Wykaz ważniejszych oznaczeń n si. – –. si 0. –. si R. –. di Pi ZPi Ni ZNi. – – – – –. G(V, E). –. K ak rik St zi. – – – – –. δi. –. m. –. wi. –. Mi. –. tmi. –. pbi. –. KMi. –. rezi. –. tkmi. –. liczba zadań (czynności) projektowych czas rozpoczęcia czynności i planowany moment rozpoczęcia czynności i, zmienne decyzyjne do ustalenia podczas tworzenia harmonogramu predyktywnego rzeczywisty moment rozpoczęcia czynności i, w harmonogramowaniu predyktywnym zastępowane jest przez E(siR), czyli oczekiwany czas rzeczywistego startu czynności i czas wykonywania czynności i zbiór wszystkich poprzedników (nie tylko bezpośrednich) czynności i zbiór bezpośrednich technologicznych poprzedników czynności i zbiór wszystkich następników (nie tylko bezpośrednich) czynności i zbiór bezpośrednich technologicznych następników czynności i acykliczny, spójny, prosty graf skierowany G(V, E) reprezentujący projekt, w którym V to zbiór węzłów odpowiadający czynnościom, a E to to zbiór łuków, które opisują zależności kolejnościowe między czynnościami liczba typów zasobów odnawialnych liczba dostępnych zasobów typu k (k = 1, …, K) zapotrzebowanie czynności i na zasób typu k zbiór zadań wykonywanych w przedziale czasu [t-1, t] planowany czas zakończenia czynności i nieprzekraczalny termin zakończenia czynności i, a właściwie termin wykonania najbliższego etapu projektu, w którym czynność ta musi być zrealizowana liczba kamieni milowych (n > m > 0) waga określająca koszt zakłócenia przypadający na jednostkę czasu związany z nieterminowością rozpoczęcia czynności i zbiór czynności narzuconych do zrealizowania w i-tym etapie projektu, o identycznym nieprzekraczalnym terminie zakończenia δj termin realizacji i-tego etapu projektu (kamienia milowego) poziom bezpieczeństwa dla terminowej realizacji i-tego kamienia milowego zbiór wszystkich czynności, których wykonanie jest niezbędne do realizacji i-tego kamienia milowego różnica między nieprzekraczalnym terminem zakończenia i-tego etapu projektu tmi a terminem realizacji wszystkich zadań z tego etapu ustalonym na podstawie aktualnego harmonogramu łączna czasochłonność wszystkich zadań ze zbioru KMi, suma czasów trwania wszystkich zadań wykonywanych w i-tym etapie projektu. -4-.

(7) Fα Stab Qual. – – –. Fn. –. wmi. –. α. –. F0, F1. –. fi. –. ESi. –. EFi. –. LSi. –. LFi. –. Mi. –. RN0-RN24 – RB0-RB14 – Bi bi bBi. – – –. wmi. –. bmi. –. ξ. –. ni. –. funkcja parametryczna stabilności i jakości uszeregowania miara stabilności uszeregowania miara wydajności, jakości harmonogramu funkcja celu harmonogramowania nominalnego, ważona suma rezerw czasowych rezi waga przypisana i-temu etapowi projektu, stosowana w funkcji celu harmonogramowania nominalnego Fn parametr występujący w funkcji celu harmonogramowania predyktywno-reaktwynego, określający znaczenie miary stabilności harmonogramu (w stosunku do jego wydajności) dwukryterialne funkcje celu predyktywno-reaktywnego harmonogramowania funkcja kary za przekroczenie terminu zakończenia i-tego etapu projektu (kamienia milowego) o 1 jednostkę czasową najwcześniejszy możliwy czas rozpoczęcia zadania i (skrót: ang. Earliest Start) najwcześniejszy możliwy czas zakończenia zadania i (skrót: ang. Earliest Finish) najpóźniejszy możliwy czas rozpoczęcia zadania i (skrót: ang. Latest Start) najpóźniejszy możliwy czas zakończenia zadania i (skrót: ang. Latest Finish) zbiór zadań Mk, do którego należy czynność i (jest jeden taki zbiór) dla zadań z tego zbioru nieprzekraczalny termin realizacji wynosi δi M i  M k , gdy i  M k  tmk   i reguły priorytetowe, które są stosowane w algorytmach priorytetowych harmonogramowania nominalnego reguły priorytetowe, które są stosowane w algorytmach priorytetowych odpornej alokacji buforów bufor czasowy po czynności i bufor czasowy przed czynnością i bufor czasowy dla zadania i (przed czynnością bi lub po czynności Bi) waga przypisana i-temu etapowi projektu, związana np. z kosztem nieterminowego wykonania i-tego kamienia milowego bufor czasowy i-tego kamienia milowego, liczba jednostek czasu przeznaczona na ochronę terminowej realizacji i-tego etapu projektu parametr określający jaką część rezerwy czasowej rezi przeznaczono na bufor czasowy bmi i-tego etapu projektu liczba zadań koniecznych do wykonania i-tego etapu projektu, liczba elementów w zbiorze KMi. -5-.

(8) Wprowadzenie Problem szeregowania prac w systemie produkcyjnym jest ważnym zadaniem dla projektantów systemów planowania produkcji. Od jakości uzyskanego harmonogramu zależy trafność decyzji podejmowanych w planowaniu działalności produkcyjnej. Szeregowanie zadań jest trudnym problemem zarówno w teorii jak i w praktyce. Teoretyczne problemy harmonogramowania od lat koncentrują się na poszukiwaniu optymalnego harmonogramu przy uwzględnieniu istniejących ograniczeń i są to najczęściej NP-trudne zagadnienia optymalizacyjne. Znalezienie optymalnego lub suboptymalnego harmonogramu i tak może okazać się niewystarczające w praktyce, w związku z niepewnością występującą w systemach rzeczywistych. W związku z tym szczególnie duże praktyczne znaczenie mają algorytmy uwzględniające dynamikę systemów produkcyjnych w zmieniającym się otoczeniu. Podczas planowania produkcji w fazie harmonogramowania predyktywnego (ang. predictive scheduling) stosowane jest podejście proaktywne (ang. proactive scheduling), w którym tworzy się harmonogram odporny (ang. robust schedule) przez antycypację możliwych zakłóceń. Jednak mimo uodpornienia harmonogramu, w trakcie produkcji pojawiają się nieprzewidywalne zakłócenia, które powodują, że dane uszeregowanie jest już niewydajne lub niemożliwe do zrealizowania. Zachodzi wtedy konieczność zastosowania harmonogramowania reaktywnego (ang. reactive scheduling), które polega na rewizji i ewentualnej modyfikacji istniejącego harmonogramu, czyli reharmonogramowaniu (ang. rescheduling), w odpowiedzi na pojawiające się zaburzenia. Zmiana istniejącego uszeregowania zadań może rozwiązać konflikty występujące w bieżącym harmonogramie np. problem związany z niedostępnością zasobów lub z awarią maszyny. Stosowanie reaktywnego harmonogramowania stwarza możliwość wykorzystania szans uzyskania bardziej efektywnego harmonogramu pojawiających się w trakcie produkcji w związku np. ze zwiększeniem się dostępności zasobu lub z zakupem nowej maszyny. W niniejszej pracy przedstawione są algorytmy harmonogramowania predyktywnoreaktywnego dla często podejmowanego w ostatnich latach problemu harmonogramowania projektu z ograniczoną dostępnością zasobów RCPSP (ang. Resource Constrained Project Scheduling Problem). Duże zainteresowanie zagadnieniem wynika z tego, że problem RCPSP znajduje szerokie zastosowania praktyczne. Coraz większa liczba zleceń produkcyjnych prowadzona jest w ramach projektów (przedsięwzięć1) [9]. Wiele przedsiębiorstw prowadzi działalność w ramach przedsięwzięć realizowanych dla dostarczenia klientowi określonego produktu. W praktyce przemysłowej produkt finalny, często zależny jest od oczekiwań i specyfikacji odbiorcy, wtedy powszechnie stosowana metoda sterowania produkcją tzw. produkcja na magazyn (ang. MTS – Make-To-Stock) zastępowana jest produkcją na zlecenie lub produkcją konstruowaną na zlecenie (ang. MTO – Make-To-Order, ETO – Engineer-To-Order). Produkcja na magazyn MTS stosowana jest dla standardowych, znormalizowanych produktów, co do których przewidywalne i powtarzalne są wymagania klientów (np. produkcja hurtowa). Natomiast produkcja na zamówienie MTO dotyczy wyrobów niestandardowych, produkowanych dla odbiorcy indywidualnego, którego 1. W rozprawie termin „projekt” i „przedsięwzięcie” są stosowane wymiennie, podobnie jak w innych pracach dotyczących RCPSP[99][100][101].. -6-.

(9) wymagania są zmienne i bywają nieprzewidywalne. Każde zlecenie produkcyjne traktowane jest jako osobny projekt powstający w konsultacji z klientem. Duże zlecenia produkcyjne powinny być realizowane zgodnie z zasadami stosowanymi przy zarządzaniu projektami. Według Brilmana [25] ponad 25% działalności gospodarczej nadaje się do zarządzania przez projekty. Także w Polsce liczba zleceń produkcyjnych realizowanych w ramach projektów jest coraz większa. Dotyczy to przede wszystkim takich dziedzin, jak sektor prac publicznych, sektor budowlany, przemysł lotniczy i obronny, budowa statków itp. Przykładowe przedsięwzięcia, przy których harmonogramowanie projektów ma zastosowanie to realizacja dużych projektów informatycznych lub realizacja prac budowlanych [38][126]. W przypadku zarządzania projektem szczególnie duże znaczenie ma harmonogramowanie predyktywno-reaktywne uwzględniające niepewność występującą przy produkcji na zlecenie wynikającą np. ze zmienności wymagań dotyczących produktów, z konieczności dostosowywania się do zmieniających oczekiwań klientów itp. W ostatnich latach powstaje coraz więcej prac dotyczących predyktywno-reaktywnego szeregowania projektu. Podejmowany jest problem RCPSP ze stochastycznymi czasami trwania czynności [42][155][157][158][159] oraz problem RCPSP ze stochastyczną dostępnością zasobów [105][106]. Brak jest opracowań, w których kompleksowo analizowane są możliwe zakłócenia występujące w systemach produkcyjnych. Istnieje wiele zagadnień dotyczących predyktywno-reaktywnego harmonogramowania produkcji z ograniczoną dostępnością zasobów jeszcze nie rozwiązanych. W pracy proponowany jest model predyktywno-reaktywnego harmonogramowania projektu z ograniczoną dostępnością zasobów ze zdefiniowanymi, nieprzekraczalnymi terminami realizacji części zadań, dla którego opracowane są nowe, wydajne algorytmy. Analiza literatury dotyczącej harmonogramowania projektu wskazała na potrzebę podjęcia badań nad algorytmami predyktywno-reaktywnego harmonogramowania projektu ze zdefiniowanymi terminami realizacji etapów projektu. Istnieje kilka przesłanek do przeprowadzenia badań. Harmonogramowanie projektu jest zagadnieniem ważnym z praktycznego punktu widzenia. Znaczna część zleceń produkcyjnych jest realizowana w formie projektów. Szczególnie istotne jest rozpatrywanie planowania realizacji innowacyjnego przedsięwzięcia w warunkach zmieniającego się otoczenia, w których często zrealizowane czasy trwania zadań różnią się od planowanych. Przydatne jest wtedy zastosowanie podejścia predyktywno-reaktywnego, w którym dąży się do minimalizacji wpływu zakłóceń produkcyjnych na planowany harmonogram. Dotychczasowe badania dotyczące harmonogramowania projektu w warunkach niepewności, skupiają się na zabezpieczeniu terminowego wykonania całego projektu lub pojedynczych zadań a nie wszystkich etapów projektu. Ochrona jedynie terminu wykonania całego projektu jest niewystarczająca. W rozprawie badane jest zabezpieczanie terminowej realizacji wszystkich etapów projektu. Etapowe rozliczanie projektu jest spotykane przy wykonaniu rzeczywistych przedsięwzięć. Autor w rozprawie zajmuje się zagadnieniami do tej pory nie analizowanymi, a które mogą być przydatne w planowaniu przedsięwzięć. Opracowane są skuteczne algorytmy heurystyczne służące do generowania wydajnych harmonogramów nominalnych z kryterium jakości określającym stopień zabezpieczenia terminowej realizacji wszystkich etapów projektu. Zaprezentowane są także nowe procedury odpornej alokacji zasobów, w których generowane są odporne na zakłócenia przydziały zasobów do czynności. Następnie autor proponuje nowe algorytmy alokacji buforów, w których wstawiane są bu-. -7-.

(10) fory czasowe zabezpieczające uszeregowanie nominalne w miejscach najbardziej narażonych na zakłócenia produkcyjne w celu minimalizacji wpływu zaburzeń na wykonanie projektu zgodnie z planem. Planowanie, harmonogramowanie projektu jest wspierane przez systemy komputerowe. Dostępne komercyjne systemy planowania projektów nie umożliwiają generowania harmonogramów ukierunkowanych na zabezpieczenie terminowej realizacji kamieni milowych. Opracowana, autorska aplikacja do planowania przedsięwzięć ze zdefiniowanymi terminami wykonania etapów prac, w której zastosowane są najskuteczniejsze z algorytmów predyktywno-reaktywnego harmonogramowania, może zaspokoić zapotrzebowanie wśród przedsiębiorstw, firm realizujących zlecenia w ramach projektów. W rozprawie zostało wykazane, że stosowanie predyktywno-reaktywnego harmonogramowania z kamieniami milowymi usprawnia działalność produkcyjną. Rozprawa podzielona jest na 8 rozdziałów. W rozdziale 1 opisano strategie i różne podejścia do problemu harmonogramowania zadań w warunkach niepewności. Szczególnie skoncentrowano się na opisie stosowanego w pracy harmonogramowania predyktywno-reaktywnego dla problemu RCPSP. Opisano zakłócenia produkcyjne w harmonogramowaniu produkcji, w tym zaburzenia występujące przy realizacji projektów. Następnie przedstawiono wskaźniki oceny stosowane w harmonogramowaniu w warunkach niepewności. W następnym rozdziale przedstawiono problem harmonogramowania zleceń produkcyjnych z ograniczoną dostępnością zasobów RCPSP. Opisano stosowane reprezentacje, schematy generowania harmonogramu i model matematyczny problemu. Sformułowano analizowane w dalszych rozdziałach zagadnienie RCPSP z określonymi nieprzekraczalnymi terminami realizacji zadań związanych z umownymi etapami projektu (tak zwanymi kamieniami milowymi). Następnie, dla tego problemu, zdefiniowano funkcję celu harmonogramowania nominalnego maksymalizującą zabezpieczenie terminowości wykonania wszystkich kamieni milowych. Na koniec przedstawiono zaproponowany w niniejszej rozprawie model matematyczny predyktywno-reaktywnego harmonogramowania, z kryterium stabilności i z kryterium terminowej realizacji wszystkich etapów projektu. Rozdział 3 poświęcono algorytmom harmonogramowania nominalnego dla problemu zdefiniowanego w rozdziale 2. Opracowano algorytmy przybliżone: konstrukcyjne (algorytmy priorytetowe z regułami priorytetowania dedykowanymi dla rozważanego zagadnienia, nowe algorytmy wstawień) oraz metaheurystyczne (algorytm genetyczny oraz symulowanego wyżarzania z nowymi operatorami przeszukiwania przestrzeni rozwiązań). Przedstawiono szeroką analizę eksperymentalną wszystkich procedur dla skonstruowanych przez autora zadań testowych. W rozdziale 4 przedstawiono problem odpornego harmonogramowania projektu. Następnie skoncentrowano się na zagadnieniu przydziału zasobów do poszczególnych zadań. Omówiono miary odporności i algorytmy alokacji zasobów stosowane w badaniach. Opracowano, modyfikując znane algorytmy, procedury przydziału zasobów dla rozpatrywanego problemu z kamieniami milowymi. Działanie algorytmów przetestowano dla uszeregowań bazowych uzyskanych przy użyciu najskuteczniejszych algorytmów harmonogramowania nominalnego. Rozdział 5 porusza zagadnienia odpornej alokacji buforów. Dokonano przeglądu miar odporności stosowanych w badaniach i zaproponowano mierniki odporności uszeregowania dla zagadnienia RCPSP z kamieniami milowymi. Następnie opisano wybra-. -8-.

(11) ne procedury odpornej alokacji zasobów. Opracowano nowe algorytmy, w których bufory wstawiane są przed czynnościami, zabezpieczając terminowe rozpoczęcie tych zadań, lub po czynnościach, zabezpieczając terminowe rozpoczęcie następników zadania. W następnym rozdziale opisano zagadnienie reaktywnego harmonogramowania projektu. Przedstawiono wybrane algorytmy i modele reaktywnego harmonogramowania dla problemu RCPSP. Następnie zaprezentowano algorytmy reaktywnego harmonogramowania dla problemu z kryterium stabilności i z kryterium terminowej realizacji kluczowych czynności. Na koniec przeanalizowano eksperymentalnie zaproponowane algorytmy alokacji buforów z reharmonogramowaniem pod kątem stabilności i wydajności systemu produkcyjnego dla różnych scenariuszy zakłóceń produkcyjnych symulujących właściwości różnych środowisk produkcyjnych. W rozdziale 7 zaprezentowano analizę możliwych zastosowań zaproponowanego modelu predyktywno–reaktywnego harmonogramowania projektu z ograniczoną dostępnością zasobów ze zdefiniowanymi kamieniami milowymi w realizacji praktycznych przedsięwzięć produkcyjnych. Zwrócono uwagę na usprawnienia w planowaniu produkcji wynikające z proponowanych rozwiązań. Wskazano koncepcje zaczerpnięte z aktualnie wykorzystywanych praktycznie podejść do szeregowania zleceń projektowych. Na koniec zaprezentowano aplikację do planowania projektu stosującą rozwiązania opisane w rozprawie, która może usprawnić harmonogramowanie dużych przedsięwzięć z narzuconymi terminami realizacji etapów projektu (kamieniami milowymi). W ostatnim rozdziale podsumowano badania wykonane w rozprawie. Wykazano prawdziwość tez postawionych w rozprawie. Wskazano dalsze kierunki badań w dziedzinie harmonogramowania projektu w warunkach niepewności.. -9-.

(12) Teza rozprawy. Cel i zadania realizowane w pracy. Celem pracy jest opracowanie skutecznych algorytmów predyktywno-reaktywnego harmonogramowania projektu z ograniczoną dostępnością zasobów ze zdefiniowanymi terminami realizacji etapów projektu. Główna teza rozprawy jest sformułowana następująco: uodpornienie uszeregowań na możliwe zakłócenia produkcyjne (harmonogramowanie predyktywne) oraz reagowanie na nieprzewidywalne zakłócenia w trakcie wykonywania harmonogramu predyktywnego (harmonogramowanie reaktywne) usprawnia realizację projektów ze zdefiniowanymi terminami realizacji etapów projektu (kamieniami milowymi). Na podstawie głównej tezy można postawić szczegółowe tezy będące przedmiotem rozprawy: 1) Harmonogramowanie projektu z uwzględnieniem zdefiniowanych, nieprzekraczalnych terminów realizacji etapów projektu (kamieni milowych) prowadzi do lepszej kontroli przebiegu wykonania przedsięwzięcia i jest przydatne przy realizacji dużych projektów konstrukcyjnych, budowlanych lub informatycznych. 2) Zastosowanie nowoczesnych metaheurystyk pozwala na skonstruowanie efektywnych harmonogramów nominalnych zabezpieczających terminową realizację kamieni milowych przedsięwzięcia. 3) Zastosowanie procedur odpornej alokacji zasobów i buforów może zwiększyć stabilność realizacji harmonogramu i doprowadzić do dotrzymania terminów realizacji etapów projektu przy różnych scenariuszach zmienności rzeczywistych systemów produkcyjnych. W celu wykazania postawionych tez zrealizowane zostały kolejne etapy badawcze:  budowa matematycznego modelu harmonogramowania produkcji z dwukryterialną funkcją celu dla harmonogramowania reaktywnego: z kryterium stabilności i z kryterium terminowej realizacji kluczowych czynności związanych z kamieniami milowymi projektu;  opracowanie miar odporności harmonogramu, stosowanych jako funkcje celu harmonogramowania predyktywnego, odpowiednich dla rozważanego modelu;  konstrukcja algorytmów harmonogramowania nominalnego, w których maksymalizowane jest zabezpieczenie terminowej realizacji kamieni milowych;  opracowanie nowych algorytmów odpornej alokacji zasobów, porównanie ich z istniejącymi procedurami obliczeniowymi;  konstrukcja nowych algorytmów odpornej alokacji buforów, testowanie ich dla zdefiniowanej miary odporności;  opracowanie procedur harmonogramowania reaktywnego dla zaproponowanego modelu;  analiza zastosowania proponowanego podejścia w realizacji praktycznych projektów. Efektem końcowym prac jest autorska aplikacja do planowania projektu z kamieniami milowymi, w której stosowane są najlepsze z opracowanych algorytmów predyktywnoreaktywnego harmonogramowania dla różnych środowisk produkcyjnych. Aplikacja ta może być wykorzystywana przy realizacji przedsięwzięć w rzeczywistych systemach produkcyjnych.. - 10 -.

(13) Zadania szczegółowe, które są wykonane w rozprawie: 1) Budowa modelu harmonogramowania predyktywno-reaktywnego ze zdefiniowanymi kamieniami milowymi. a) Zdefiniowanie funkcji celu harmonogramowania nominalnego – jako ważonej sumy poziomu zabezpieczenia terminów realizacji wszystkich kamieni milowych – z większą wagą tych najmniej zabezpieczonych. b) Określenie funkcji celu harmonogramowania odpornego – opracowanie nowych miar odporności uwzględniających następujące założenia:  im więcej zasobów realizuje czynność, tym jest ona bardziej podatna na zakłócenia,  im czynność jest dłuższa, tym bardziej zwiększa się możliwość jej wydłużenia, dłuższe zadania wykazują się większą zmiennością bezwzględną,  zakłócenie rozpoczęcia czynności bardziej zasobochłonnej powoduje większy koszt niestabilności (dezorganizacja pracy większej liczby zasobów). c) Budowa funkcji celu harmonogramowania reaktywnego z kryterium stabilności i z kryterium terminowej realizacji kamieni milowych, umożliwiająca analizę zależności między stabilnością a jakością uszeregowań predyktywno-reaktywnych. 2) Konstrukcja zadań testowych. Algorytmy testowane są przy wykorzystaniu zadań testowych dla problemu deterministycznego RCPSP - biblioteka PSPLIB [16]. Benchmarki te są zmodyfikowane, przez określenie terminów realizacji zadań związanych z kamieniami milowymi przedsięwzięcia. Dodatkowo konieczna jest adaptacja zadań testowych na potrzeby predyktywno-reaktywnego harmonogramowania. Określany jest m.in. sposób generowania zakłóceń produkcyjnych w różnych środowiskach produkcyjnych. 3) Konstrukcja nowych algorytmów harmonogramowania nominalnego. Dla zaproponowanej funkcji celu harmonogramowania nominalnego:  stworzenie harmonogramu na podstawie listy priorytetowej – testowanie różnych reguł priorytetu uwzględniających poziom zabezpieczenia poszczególnych kamieni milowych;  opracowanie algorytmów metodą wstawień;  poprawa jakości uzyskanych harmonogramów przy użyciu metaheurystyk: testowane są algorytmy symulowanego wyżarzania oraz algorytmy genetyczne. 4) Opracowanie nowych algorytmów harmonogramowania odpornego a) Opracowanie nowych algorytmów odpornej alokacji zasobów. b) Konstrukcja nowych algorytmów odpornej alokacji buforów. Wstawianie buforów czasowych przed zadaniami w newralgicznych miejscach harmonogramu nominalnego, najbardziej narażonych na zakłócenia, o największym koszcie niestabilności, w celu uodparniania harmonogramu m.in. przed czasową niedostępnością zasobów i przed zmiennością czasów trwania czynności. Efektem działania algorytmów jest maksymalizacja opracowanej przez autora funkcji celu harmonogramowania odpornego. Przy uodparnianiu szczegółów harmonogramu proponowane przez autora jest wykorzystanie dwóch podejść: - podejście, w którym zdefiniowana jest dodatkowo funkcja celu (miara odporności harmonogramu) podlegająca maksymalizacji (lub minimalizacji), harmonogramy. - 11 -.

(14) można oceniać bez konieczności przeprowadzania symulacji, wybierane jest rozwiązanie o największej odporności, z punktu widzenia określonej funkcji celu; - podejście, w którym wstawiane są bufory, zgodnie z określoną procedurą, w najbardziej narażonych na zakłócenia miejscach harmonogramu, generowane jest jedno rozwiązanie, które nie jest poprawiane. Opracowane są nowe algorytmy, w których bufory są rozmieszczane zgodnie z tymi podejściami: - algorytmy, w których wstawiane są bufory przed czynnościami zabezpieczające terminowe rozpoczęcie tych zadań; - algorytmy, w których wstawiane są bufory po czynnościach zabezpieczające terminowe rozpoczęcie ich następników. 5) Analiza obliczeniowa opracowanych algorytmów predyktywno-reaktywnych: a) Przedstawienie analiz i wniosków z eksperymentów obliczeniowych dla opracowanych algorytmów predyktywno-reaktywnych przy różnych scenariuszach przebiegu zmienności czasów trwania zadań. b) Analiza zastosowania zaproponowanych rozwiązań w rzeczywistych systemach produkcyjnych przy realizacji projektu informatycznego lub konstrukcyjnego. 6) Stworzenie aplikacji do planowania projektów z kamieniami milowymi. Przy użyciu aplikacji możliwe jest generowanie harmonogramów przedstawionych na wykresie Gantt’a z uwzględnieniem niepewności (przewidywanych wahań czasów trwania zadań) oraz terminów realizacji etapów projektu. Podczas harmonogramowania stosowane są najskuteczniejsze z opracowanych predyktywno-reaktywnych algorytmów.. - 12 -.

(15) 1 Harmonogramowanie w warunkach niepewności W trakcie produkcji pojawiają się nieprzewidywalne zakłócenia np. awarie maszyn, opóźnienia w dostawach materiałów, niekorzystne warunki atmosferyczne, błędy oszacowania czasów wykonania zadań itp., które powodują, że planowane harmonogramy stają się niewydajne lub niemożliwe do zrealizowania. W związku z tym w ostatnich latach powstaje coraz więcej prac uwzględniających niepewność związaną z dynamiką systemów produkcyjnych w zmieniającym się otoczeniu. Próby usystematyzowania badań dotyczących tych zagadnień podejmowane są w pracach przeglądowych [8] [40][14][163][58][59]. W rozdziale zaprezentowany jest przegląd zagadnień związanych z harmonogramowaniem zadań w warunkach niepewności. Opisane są środowiska produkcyjne, w których występuje zmienność parametrów produkcyjnych. Omówione są także zakłócenia uwzględniane w trakcie produkcji, w szczególności zaburzenia występujące przy realizacji projektów. Przedstawione są również podejścia, strategie i metody stosowane w harmonogramowaniu w warunkach niepewności. Przeanalizowane są wskaźniki, które mogą służyć do oceny planowanych i zrealizowanych harmonogramów w zmiennych środowiskach produkcyjnych.. 1.1 Środowiska produkcyjne Podczas produkcji mamy do czynienia z różnymi środowiskami produkcyjnymi, które są identyfikowane przez charakterystykę zadań, które mają być szeregowane. Można wyróżnić następujące środowiska harmonogramowania [163]:  statyczne, w których występuje ustalona, niezmienna w trakcie realizacji produkcji, skończona liczba zadań, które mają być uszeregowane: o model deterministyczny – parametry systemu i zadań są od początku znane, nie występuje niepewność co do przyszłości; o model stochastyczny – część informacji dotycząca zadań i systemu jest niepewna np. czas wykonania zadania można określić jedynie jako zmienną losową;  dynamiczne, w których występują zmiany w trakcie produkcji np. pojawiają się nowe zadania, zmienia się liczba dostępnych zasobów itp.: o zadania pojawiają się cyklicznie (ang. cyclic production), ich kolejność pojawiania się jest znana od początku, w systemie tym pewien zbiór zadań jest ciągle powtarzany – w takim przypadku wystarczy stworzyć harmonogram dla tego zbioru zadań i cyklicznie go realizować; o występuje niepewność w pojawianiu się zadań, w dostępności zasobów itp., harmonogramy muszą być tworzone dynamicznie, rozważane są różne typy systemów produkcyjnych np.: system gniazdowy (job shop), system przepływowy (flow shop), elastyczny system produkcyjny (FMS – Flexible Manufacturing System) itp. W zależności od charakteru rozważanego środowiska produkcyjnego wyróżnia się:  problemy deterministyczne,. - 13 -.

(16)  problemy niedeterministyczne. Problemy niedeterministyczne dotyczą środowisk statycznych (model stochastyczny) i środowisk dynamicznych. Przy rozwiązywaniu problemów niedeterministycznych musi być uwzględniona niepewność i zmienność występującą w tych środowiskach. Rozważana w pracy produkcja prowadzona w ramach projektów realizowanych na zlecenie klientów MTO, cechuje się zmiennością charakterystyczną dla środowiska dynamicznego, dlatego zastosowanie, w tym przypadku, szeregowania predyktywnoreaktywnego jest uzasadnione i szczególnie istotne.. 1.2 Niepewność w harmonogramowaniu zadań W teorii decyzji często rozróżnia się dwa pojęcia: ryzyko i niepewność. W warunkach niepewności nie są znane prawdopodobieństwa wystąpienia poszczególnych stanów rzeczy, które mają wpływ na wynik działania [145]. Natomiast ryzyko to dająca się zmierzyć niepewność, występuje gdy podczas planowania (podejmowania decyzji) znany jest rozkład prawdopodobieństwa wystąpienia poszczególnych zdarzeń [145]. Ryzyko dotyczy zjawisk powtarzalnych a w rzeczywistości często występują zdarzenia niepowtarzalne, związane z niepewnością. Podobne znaczenie niepewności i ryzyka można znaleźć w zarządzaniu produkcją. W harmonogramowaniu mamy do czynienia z niepewnością dotyczącą części informacji (niepełne informacje) i z ryzykiem dotyczącym innych informacji (nieprecyzyjne informacje). Źródłem niepewności w planowaniu produkcji jest nie losowość zdarzeń (rozpatrywana przy ryzyku), ale fakt, że o wystąpieniu poszczególnych zdarzeń decyduje wiele czynników, z których tylko część jest kontrolowana tzn. znana i możliwa do uwzględnienia przy podejmowaniu decyzji. Podczas produkcji część czynników mających wpływ na proces produkcyjny to czynniki niekontrolowane tj. dostawcy materiałów, klienci, warunki atmosferyczne. Te czynniki często zaburzają harmonogram produkcji i są głównym źródłem niepewności2. W trakcie realizacji zadań produkcyjnych występują zatem dwa rodzaje zmienności [67]: 1) zmienność kontrolowana – powtarzalna, wynikająca ze znanych przyczyn, z procesów zachodzących wewnątrz systemów np. z różnic w jakości materiałów, z różnego tempa wykonywania pracy przez pracowników; 2) zmienność niekontrolowana – niepowtarzalna ze względu na nieprzewidywalne, przypadkowe zdarzenia występujące w trakcie produkcji tj. awarie maszyn. Mimo, że przy szeregowaniu zadań, dokładne lub probabilistyczne określenie wszystkich parametrów mających wpływ na realizowany harmonogram, najczęściej nie jest możliwe, część parametrów opisywana jest rozkładami prawdopodobieństwa np. czasy trwania powtarzalnych zadań produkcyjnych, prawdopodobieństwo wystąpienia awarii maszyny, czas naprawy maszyny itp. Dla nowych zleceń produkcyjnych przy produkcji na zlecenie MTO możliwe jest jedynie szacowanie czasów trwania, nie jest natomiast możliwe określenie rozkładów prawdopodobieństwa. Można subiektywnie przyjąć pewne rozkłady czasów trwania, ale jest to także obarczone niepewnością. Istnieje kilka sposobów formalnej reprezentacji niepewności i niepełnej wiedzy wykorzystywanych w harmonogramowaniu. Wprowadza się opisywanie parametrów produkcyjnych przy użyciu: 2. W podrozdziale 1.2.1 przedstawione są źródła niepewności w planowaniu produkcji tzw. zakłócenia produkcyjne.. - 14 -.

(17)  rozkładów prawdopodobieństw tzw. harmonogramowanie stochastyczne (ang. stochastic scheduling);  arytmetyki rozmytej tzw. harmonogramowanie rozmyte (ang. fuzzy scheduling);  arytmetyki przedziałowej [32] – parametry produkcyjne opisane za pomocą przedziałów liczbowych. W podrozdziałach 1.2.2 i 1.2.3 zaprezentowane są podstawowe informacje dotyczące harmonogramowania rozmytego i stochastycznego.. 1.2.1 Zakłócenia produkcyjne w harmonogramowaniu zadań Zakłócenia produkcyjne są źródłem niepewności w harmonogramowaniu zadań. Ich obecność w rzeczywistych systemach produkcyjnych przyczynia się do konieczności wprowadzania zmian w planowanym uszeregowaniu (stąd zwane są czynnikami reharmonogramowania z ang. rescheduling factors). Zakłócenia produkcyjne powinny być uwzględniane w każdej fazie produkcji, aby usprawnić realizację zadań. W tabeli 1 przedstawione są różnego rodzaju zakłócenia, rozważane w literaturze, z podziałem na zaburzenia związane ze zmianami dostępności zasobów, z zamówieniami lub z błędnym oszacowaniem parametrów produkcji [36]. Tabela 1. Typowe zakłócenia harmonogramu w środowiskach produkcyjnych Klasa Przykładowe zakłócenia Przykładowe prace badawcze zakłóceń awarie maszyn Sabuncuoglu, Karabuk [135]; Li i in. [110]; Kim, Kim [73]; Church, Uzsoy [37]; Yamamoto, Nof [167]; Abumaizar, Svestka [1]; zakłócenia Jain, Elmaraghy [61]; Lambrechts i in.[105]; związane Lambrechts i in.[106]; Kutanoglu i in. [104] z dostępnością zasobów czasowa niedostępność narzędzi Suresh, Chaudhari [146] czasowa nieobecność operatora Church, Uzsoy [37] maszyn pilne zamówienia, Abumaizar, Svestka [1]; Kim, Kim [73]; Li nowe zadania o szybkim terminie i in. [110]; Jain, Elmaraghy [61]; realizacji zmiana priorytetu zadania Jain, Elmaraghy [61] opóźnienia w dostarczeniu materia- Abumaizar, Svestka [1]; Li i in. [110]; łów lub niedobory materiałowe zakłócenia zaniechanie wykonania zadania Abumaizar, Svestka [1]; Li i in.[110]; Jain, związane (zamówienia) Elmaraghy [61] z zamówieniami zmiana terminu zakończenia zada- Li i in.[110]; nia zmiana specyfikacji zadania (wsta- Matsuura i in. [118] wienie lub usunięcie czynności) konieczność ponownego wykonania Li i in. [110]; Church, Uzsoy [37] zadania w związku ze słabą jakością wykonania różnice między oszacowanymi Li i in. [110]; Leus [108]; Van de Vonder a rzeczywistymi czasami [160]; Bidot i in. [15] zakłócenia np. różnice dotyczące czasu przezwiązane twarzania zadania, różnice dotycząz błędnym oszace czasu naprawy maszyny cowaniem pararóżnice między oszacowanymi Suresh, Chaudhari [144] metrów produkcji a rzeczywistymi pomiarami jakości (braki jakościowe). - 15 -.

(18) W tabeli 1 zaprezentowane są zakłócenia produkcyjne występujące w klasycznych problemach szeregowania. W harmonogramowaniu przedsięwzięć są rozpatrywane także inne zakłócenia charakterystyczne dla zagadnień projektowych [171]. Stosowany jest następujący podział zakłóceń realizacji projektów:  zakłócenia dotyczące sieci czynności projektu  pojawienie się nowych czynności,  pojawienie się nowych ograniczeń kolejnościowych,  zakłócenia dotyczące czynności  zmiany w czasie trwania czynności w trakcie realizacji harmonogramu (np. stochastyczne czasy trwania czynności),  opóźnienie rozpoczęcia czynności (związane np. z nieterminowym dostarczeniem materiałów przez poddostawców),  zmiany zapotrzebowania na zasoby poszczególnych czynności,  zakłócenia dotyczące zasobów  czasowa niedostępność zasobu (np. awaria maszyny),  stałe zwiększenie (zmniejszenie) dostępności zasobu,  zakłócenia dotyczące terminów realizacji  zmiana (np. przyspieszenie) terminu realizacji projektu,  zmiana terminu realizacji kamieni milowych projektu. W harmonogramowaniu projektu najczęściej podejmowany jest problem niepewności związanej z czasami trwania czynności [108][109][155][156][157][158][159][160][93] [66]. Zakłada się bowiem, że wpływ wszystkich innych rodzajów zakłóceń sprowadza się do zmienności czasów trwania (np. niekorzystne warunki atmosferyczne, niedostępność zasobów, problemy z dostawami materiałów itp. powodują wydłużenie czasu wykonania zadań). Problem harmonogramowania w warunkach niepewności analizowany jest wtedy jako zagadnienie minimalizacji wpływu możliwych zmian w czasach realizacji zadań. Takie podejście stosowane jest również w niniejszej rozprawie.. 1.2.2 Harmonogramowanie stochastyczne Harmonogramowanie stochastyczne jest często stosowane w harmonogramowaniu w warunkach niepewności. Sprowadza się do probabilistycznego określania (za pomocą rozkładów prawdopodobieństw) części parametrów produkcyjnych tj. czasy trwania zadań, czas naprawy maszyny itp. Również struktura zadań może być określona stochastycznie. Analizowane są tzw. sieci stochastyczne GERT (ang. Graphical Evaluation and Review Technique) [128][134]. Harmonogramowanie stochastyczne może być zastosowane jedynie dla zdarzeń powtarzalnych, rutynowych – wymaga posiadania wiarygodnych danych historycznych. Najczęściej jako dane stochastyczne występują czasy trwania czynności, które generowane są jako liczby losowe z pewnych rozkładów. Podczas tworzenia harmonogramu predyktywnego jako czasy trwania przyjmuje się najbardziej prawdopodobne czasy trwania czynności i rozwiązuje się deterministyczny problem RCPSP, który następnie jest uodparniany podczas harmonogramowania proaktywnego przy uwzględnieniu wiedzy statystycznej dotyczącej poszczególnych zadań. Stosowane są również symulacje Monte Carlo w celu znalezienia odpornych uszeregowań [108][159]. W fazie planowa-. - 16 -.

(19) nia nie można precyzyjnie określić np. czasu realizacji wszystkich zadań. Możliwe jest natomiast wyznaczenie oczekiwanego (najbardziej prawdopodobnego) momentu zakończenia wszystkich zadań lub określenie prawdopodobieństwa terminowego wszystkich zadań. Definiowany jest np. beta-odporny harmonogram (ang. beta-robust schedule) [39] jako uszeregowanie maksymalizujące prawdopodobieństwo, że łączny czas trwania wszystkich zadań nie przekroczy określonego progu. Przedmiotem prac badawczych stosujących podejście stochastyczne są m.in. predyktywno-reaktywne harmonogramowanie ze stochastycznymi czasami trwania zadań [108][109][155][156][157][158][159][160] oraz problem stochastyczny z niepewnością dotyczącą dostępności zasobów [105][106]. Podejmowane są także próby usystematyzowania badań dotyczących stochastycznego harmonogramowania projektu z ograniczoną dostępnością zasobów [144].. 1.2.3 Harmonogramowanie rozmyte W ostatnich latach coraz częściej w pracach dotyczących harmonogramowania parametry produkcyjne opisuje się przy użyciu liczb rozmytych. Stosowanie liczb rozmytych ma sens zwłaszcza wtedy, gdy realizowane są nowe zlecenia produkcyjne i brak jest wiedzy historycznej dotyczącej np. czasów trwania poszczególnych czynności lub wtedy, gdy źródłem niepewności jest obecność człowieka w procesie podejmowania decyzji tj. przy produkcji na zlecenie klienta MTO. Parametry produkcyjne można wtedy jedynie oszacować, korzystając np. z wiedzy ekspertów, opisując je przy użyciu liczb rozmytych. Liczba rozmyta odzwierciedla niepewność związaną ze słabo znanym parametrem, modelowanym przez tę liczbę. Stosowana jest teoria zbiorów rozmytych opracowana przez L.A. Zadeha [169][170] opierająca się na logice wielowartościowej3. Możliwa jest częściowa przynależność danego elementu do zbioru, opisana funkcją przynależności. Funkcja celu wyznaczona z obliczeń na rozmytych czasach trwania czynności jest też liczbą rozmytą (konieczne jest stosowanie operatorów właściwych dla liczb rozmytych). Kryterium dochowania terminowości wykonania projektu można określić jako np. prawdopodobieństwo, że dotrzymany zostanie termin realizacji projektu na dopuszczalnie niskim poziomie. Rozmyta funkcja celu stwarza możliwości dodatkowych analiz i interpretacji. W produkcji realizowanej w ramach projektów zleconych przez klientów zastosowanie harmonogramowania rozmytego jest uzasadnione. Często bowiem wymagania poszczególnych klientów są na tyle specyficzne (brak podobnych, zrealizowanych zadań), że konieczne jest szacowanie czasów realizacji poszczególnych zadań. W związku z praktycznym znaczeniem rozmytego problemu harmonogramowania projektu liczba prac dotyczących tego zagadnienia jest dość duża [51][35][33][103][32] [111][112][138][150][151]. Pierwsze modele rozmyte stworzyli Hapke, Jaszkiewicz i Słowiński w 1994r. [50]. W badaniach dotyczących harmonogramowania wykorzystujących liczby rozmyte, stosowana jest zmodyfikowana deterministyczna metoda planowania PERT (ang. Program Evaluation and Review Technique) operująca rozmytymi czasami trwania zadań [35][33][103]. Analizowana jest krytyczność czynności w sieci czynności. Podejmowana jest analiza ścieżek możliwie i koniecznie krytycznych [32]. 3. Logika klasyczna jest dwuwartościowa: „0” – oznacza brak przynależności do zbioru, a „1” – oznacza przynależność do zbioru. - 17 -.

(20) 1.3 Przegląd podejść do harmonogramowania w warunkach niepewności Harmonogramowanie produkcji w warunkach niepewności sprowadza się do uwzględnienia możliwych zakłóceń produkcyjnych. Zasadniczo wyróżnia się dwa podejścia do tego problemu:  harmonogramowanie dynamiczne,  harmonogramowanie predyktywno-reaktywne. W środowiskach o bardzo dużej zmienności pomijana jest faza planowania i stosowane jest podejście określane jako tzw. dynamiczne harmonogramowanie (ang. dynamic scheduling). W dynamicznym szeregowaniu zadań nie tworzy się harmonogramów. Przydzielanie zadań do odpowiednich zasobów (maszyn) odbywa się w chwili, w której zasób (maszyna) jest gotowy do przetwarzania nowego zadania, przy zastosowaniu prostych reguł priorytetowania zadań. W harmonogramowaniu predyktywno-reaktywnym występują dwa etapy, często funkcjonujące w badaniach jako odrębne, ale w rzeczywistych systemach ich wykorzystanie powinno być łączne:  etap harmonogramowania predyktywnego – związany z etapem planowania,  etap harmonogramowania reaktywnego – związany z etapem realizacji planu produkcji. W fazie planowania produkcji tworzony jest harmonogram predyktywny, zwany też bazowym (ang. baseline schedule). Ponieważ uporządkowanie zadań powstaje przed rozpoczęciem procesu produkcji, etap ten zwany jest również fazą offline (ang. offline scheduling) [13][14]. Po stworzeniu planu, w trakcie realizacji produkcji w rzeczywistych systemach produkcyjnych, konieczne jest monitorowanie procesu produkcyjnego, w celu reagowania na zdarzenia zakłócające harmonogram predyktywny. W tej fazie, zwanej harmonogramowaniem reaktywnym, wprowadzane są zmiany w harmonogramie, które pozwalają rozwiązać problemy występujące w bazowym harmonogramie związane np. z awarią maszyny. Uszeregowanie zadań zmieniane jest na bieżąco w trakcie produkcji, stąd etap ten jest także nazywany fazą online. Realizacja zlecenia produkcyjnego przy zastosowaniu podejścia predyktywnoreaktywnego składa się z faz, takich jak [72][160]:  faza planowania – określenie zadań i ich czasów trwania, zasobochłonności, ustalenie relacji kolejnościowych między czynnościami, ustalenie terminów realizacji całego projektu i poszczególnych etapów tzw. kamieni milowych determinujących harmonogram zadań powstający w fazie harmonogramowania;  faza harmonogramowania – ustalenie czasów rozpoczęcia (i zakończenia) czynności realizujących dany projekt oraz określenie alokacji poszczególnych zasobów do tych czynności, w tej fazie harmonogramowanie predyktywne: nominalne i odporne;  faza realizacji, kontroli – monitorowanie przede wszystkim terminowej realizacji umownych etapów projektu, przy jednoczesnym zachowaniu stabilności harmonogramu predyktywnego, w tej fazie harmonogramowanie reaktywne w odpowiedzi na pojawiające się zakłócenia produkcyjne;  faza oceny – po wykonaniu projektu ocena zrealizowanego uszeregowania np. przez porównanie z optymalnym harmonogramem ex-post.. - 18 -.

(21) Kolejne fazy realizacji projektu w podejściu predyktywno-reaktywnym przedstawione są na rysunku 1. FAZA PLANOWANIA - określenie zadań - estymacja czasów trwania - zdefiniowanie kamieni milowych. FAZA HARMONOGRAMOWANIA - harm. nominalne - harm. odporne: alokacja zasobów alokacja buforów. FAZA REALIZACJI - kontrola - harm. reaktywne. FAZA OCENY - ocena po zakończeniu projektu. Rysunek 1. Kolejne fazy realizacji przedsięwzięcia. W badaniach dotyczących harmonogramowania w warunkach niepewności wymienione podejścia często są stosowane jako osobne strategie szeregowania zadań. W tabeli 2 przedstawione są wady i zalety poszczególnych podejść. Tabela 2. Wady i zalety różnych strategii harmonogramowania zadań w warunkach niepewności Cechy środowiska produkcyjnego odpoStrategia Zalety Wady wiedniego dla danej strategii Harmonogramowanie harmonogramy niezaduży koszt obliczeniowy, statyczne, stabilne predyktywne kłócone są bliskie niska odporność uszeregoz minimalną liczbą nominalne optymalnym wania zakłóceń duży koszt obliczeniowy, uzyskany harmonowzględnie stabilne Harmonogramowanie niższa jakość harmonogram jest odporny z nieczęstymi predyktywne - proakgramu np. ze względu na (zdolny do absorpcji i mniej istotnymi tywne (odporne) wstawione czasy bezczynzakłóceń) zakłóceniami ności maszyn najczęściej niski koszt obliczeniowy, stabilniższa jakość harmonoHarmonogramowanie dynamiczne ność harmonogramu gramu po wystąpieniu reaktywne z zakłóceniami przez szybkie reagozakłócenia wanie na zakłócenia najczęściej niski koszt Harmonogramowanie niska jakość dynamiczne z wieloma obliczeniowy, minidynamiczne harmonogramu zakłóceniami malny wpływ zakłóceń. Predyktywno-reaktywne harmonogramowanie projektu w porównaniu z dynamicznym szeregowaniem posiada wiele zalet z praktycznego punktu widzeniu. Stosowanie harmonogramowania dynamicznego jest wskazane jedynie w środowiskach produkcyjnych cechujących się dużą zmiennością i niepewnością. W niniejszej rozprawie stosowane jest podejście predyktywno-reaktywnym, na początku generowany jest harmonogram bazowy, który jest realizowany podczas produkcji. Badania wskazują, że jest to podejście preferowane w praktyce [160][163].. 1.4 Harmonogramowanie dynamiczne W dynamicznym szeregowaniu zadań, zwanym rzadziej online scheduling [163][55], nie tworzy się harmonogramów. Przydzielanie zadań do odpowiednich zasobów (maszyn) odbywa się w chwili, w której zasób (maszyna) jest gotowy do przetwarzania nowego zadania. Wykorzystywane są wszystkie informacje dostępne w tym momencie.. - 19 -.

(22) Najczęściej tworzy się kolejkę zadań do przetwarzania w oparciu o określone kryterium (ang. dispatching rules): zadaniom, czekającym na przetwarzanie, nadaje się priorytety i zadanie o najwyższym priorytecie w danej chwili jest przydzielane do zasobu. Przykładowe kryteria to np. najkrótszy czas przetwarzania (ang. SPT – Shortest Processing Time), najwcześniejszy termin zakończenia (ang. EDD – Earliest Due Date) itp. Reguły priorytetowania zadań mogą być lokalne (rozważana tylko część problemu, wybrane czynności) lub globalne (rozważany cały problem, wszystkie czynności). W szeregowaniu dynamicznym konieczne jest stosowanie odpowiednich technik sterowania przepływem produkcyjnym, nie korzystających z harmonogramu. Stosowana jest technika kontroli przepływu materiałów tzw. technika ssania (ang. Pull) [163][55], wykorzystująca m.in. karty Kanban4 lub stały poziom produkcji w toku ConWIP5 (ang. CONstant Work In Process). Badania dotyczące harmonogramowania w warunkach niepewności wskazują, że gdy liczba zakłóceń występujących w systemie produkcyjnym jest duża, szeregowanie dynamiczne daje dobre rezultaty [8][12]. Natomiast gdy liczba zaburzeń nie jest wysoka, harmonogramowanie dynamiczne nie jest odpowiednią strategią. Lepsze wyniki uzyskiwane są przy zastosowaniu harmonogramowania predyktywno-reaktywnego [107][118][167][168]. Dynamiczne przydzielanie zadań należy stosować, jedynie gdy przekroczony jest określony, znaczny poziom niepewności [8]. Stosowane są także mieszane strategie reharmonogramowania. Na przykład dla problemu typu job shop proponowana jest metoda polegająca na połączeniu harmonogramowania predyktywnego z metodą wyboru kolejnych zadań w oparciu o regułę priorytetowania [118]. W trakcie pracy systemu realizowany jest wyznaczony harmonogram, natomiast w momencie gdy pojawi się zakłócenie (awaria maszyny) zadania są wybierane dynamicznie na podstawie reguły priorytetowania. Rezultaty wskazują na dobrą skuteczność takiej mieszanej strategii ponownego harmonogramowania.. 1.5 Harmonogramowanie predyktywne W odróżnieniu od dynamicznego szeregowania zadań w harmonogramowaniu predyktywno-reaktywnym na początku tworzy się harmonogram (ang. baseline schedule), który w trakcie realizacji jest zmieniany w odpowiedzi na pojawiające się zdarzenia zaburzające wydajność systemu lub uniemożliwiające realizację tego harmonogramu (faza reaktywnego harmonogramowania). Tworzenie harmonogramu predyktywnego, przed realizacją projektu, pełni ważną rolę w planowaniu produkcji [123]. Między innymi:  pozwala oszacować czas zakończenia projektu, możliwe jest etapowe rozliczanie się z odbiorcami projektu (określanie czasów realizacji poszczególnych etapów projektu), pozwala na monitorowanie terminowości realizacji umownych terminów projektu,  usprawnia organizację produkcji, stabilizuje pracę, umożliwia koordynację wewnętrznych zasobów przedsiębiorstwa (przezbrojenia, wspieranie personelu), ich wzajemne transfery między projektami (w środowisku wieloprojektowym), 4. Kanban jest to samoregulujący się, zdecentralizowany system sterowania przepływem materiałów w sposób ssący. Kontrola realizowana jest przy użyciu kontrolnych kart ruchu i kart produkcji zawierających informacje niezbędne do sterowania ilością i czasem przepływu materiału. 5 ConWIP jest odmianą sterowania Kanban, przy czym jedna karta Kanban jest przydzielona do całej linii produkcyjnej. Pozwala utrzymać stały zapas produkcji w toku.. - 20 -.

(23)  pozwala określić czasowe zapotrzebowanie na materiały (kontrakty z dostawcami, zamówienia dokładnie na czas JIT Just-In-Time), Dodatkowo brak jednoznacznie ustalonych terminów realizacji procesów w harmonogramowaniu dynamicznym utrudnia procedury pozyskiwania i kontraktowania wykonawców. Harmonogramowanie predyktywne jest bardzo istotne przy organizacji procesu produkcji. Zalety tworzenia harmonogramów podkreślają znaczenie stabilności systemu produkcyjnego, którą można osiągnąć przez realizację ściśle określonego planu zawartego w harmonogramie. W związku z tym jednym z celów reaktywnego harmonogramowania jest zachowanie stabilności uszeregowania zadań (ang. schedule stability), czyli możliwie najdokładniejsza realizacja harmonogramu predyktywnego. Im większa liczba zmian w harmonogramie, tym większa „nerwowość” produkcji prowadząca do dezorganizacji procesu produkcyjnego. W fazie predyktywnego harmonogramowania generowane są harmonogramy:  nominalny (ang. nominal schedule) – deterministyczny, uwzględniający jedynie aktualne parametry systemu, bez uwzględniania zmienności i niepewności parametrów systemu,  odporny na zakłócenia (ang. robust schedule), proaktywny (ang. proactive schedule) – uwzględniający zmienność i niepewność parametrów systemu – tworzenie takiego harmonogramu ma przeciwdziałać niestabilności i nerwowości (ang. nervousness) harmonogramów nominalnych. W harmonogramowaniu nominalnym tworzony jest harmonogram początkowy uwzględniający kryteria wydajnościowe, który następnie jest uodparniany podczas harmonogramowania proaktywnego. Proaktywny harmonogram tworzy się m.in. np. przez wstawianie buforów czasowych w newralgicznych miejscach uszeregowania. Podczas tworzenia uszeregowania może zostać uwzględniona statystyczna wiedza dotycząca możliwych zakłóceń planu produkcji, wykryta dzięki analizie wcześniejszego przebiegu produkcji. Badania wskazują, że stosowanie podejścia proaktywnego przynosi wymierne korzyści. Na przykład proaktywne harmonogramy dla dynamicznych systemów typu job shop (ze wstawionymi czasami bezczynności maszyn) znacznie zwiększają stabilność systemu a równocześnie nie pogarszają istotnie wydajności uszeregowania początkowego (predyktywne harmonogramy początkowe porównywane są do harmonogramów nominalnych tworzonych przy ignorowaniu możliwych awarii) [123]. Korzyści ze stosowania harmonogramowania predyktywnego są duże, zwłaszcza w systemach produkcyjnych, gdzie występuje duża awaryjność maszyn. W harmonogramowaniu proaktywnym stosowane są następujące techniki, uwzględniające niepewność podczas tworzenia harmonogramu bazowego:  techniki nadmiarowości, redundancji (ang. redundancy-based techniques);  harmonogramowanie warunkowe, wariantowe (ang. contingent scheduling);  tworzenie częściowo uporządkowanych harmonogramów zadań (ang. POS – Partial Order Schedules);  analiza wrażliwości uszeregowań. W kolejnych podrozdziałach omówione są bardziej szczegółowo te proaktywne techniki. W niniejszej pracy rozważane są przede wszystkim techniki redundancji. Są one również najczęściej stosowane w badaniach dotyczących harmonogramowania proaktywnego.. - 21 -.

(24) 1.5.1 Techniki redundancji Techniki redundancji sprowadzają się do generowania harmonogramów zawierających bufory czasowe [108][109][155][156][157][158][159][160] lub zasobowe [105][106], które są odporne na zakłócenia przy wykorzystaniu wiedzy dotyczącej niepewności parametrów produkcyjnych. Bufory czasowe lub zasobowe są wstawiane w celu uodpornienia harmonogramu przed możliwymi zakłóceniami produkcyjnymi. Oczywiście wstawianie np. zapasów czasowych dla poszczególnych zadań zabezpiecza dane uszeregowanie przed ewentualnym opóźnieniem danego zadania, ale równocześnie często powoduje zwiększenie czasu realizacji wszystkich zadań, pogarsza jakość harmonogramu. Istnieje zależność między jakością a odpornością harmonogramu. Konieczne jest stosowanie inteligentnych technik alokacji buforów np. wstawianie buforów czasowych tylko dla czynności krytycznych np. realizowanych przy użyciu najbardziej awaryjnych maszyn [41]. Dla problemu RCPSP stosowane są różne metody uodparniania uszeregowań wykorzystujące techniki redundancji, takie jak: metoda łańcuchów krytycznych i zarządzania buforami [48], metody szacowania rozmiarów buforów na podstawie wiedzy statystycznej [108][109][155][156][157][158][159][160]. Metody te opisane są szerzej w rozdziale 5.. 1.5.2 Harmonogramowanie warunkowe Harmonogramowanie warunkowe [6][17][46] polega na stworzeniu różnych wariantów uszeregowania predyktywnego, które w fazie realizacji produkcji są wybierane w momencie pojawiania się zakłóceń produkcyjnych. Często w praktyce wyboru właściwego wariantu uszeregowania dokonuje człowiek. Różne warianty harmonogramów tworzone są w newralgicznych punktach przebiegu produkcji, najbardziej narażonych na zaburzenia. Opracowywane są alternatywne uporządkowania zadań, optymalne w przypadku pojawienia się konkretnych zakłóceń. Gdy przewidywane zaburzenie wystąpi, możliwe jest przejście na realizację uszeregowania uwzględniającego to zakłócenie. Metoda harmonogramowania warunkowego (Just-In-Case Scheduling) zastosowana jest np. dla rzeczywistego problemu szeregowania obserwacji przy użyciu teleskopu przy niepewnych czasach trwania poszczególnych obserwacji [46]. Opracowano różne warianty harmonogramów w miejscach, w których awaria teleskopu jest najbardziej prawdopodobna. Rozwiązanie to okazało się skuteczne w praktyce. Harmonogramy warunkowe są często bardziej wydajne niż harmonogramy budowane przy zastosowaniu technik redundancji. Jednak duża złożoność obliczeniowa (przez konieczność generowania wielu wariantów harmonogramów) powoduje, że harmonogramowanie warunkowe nie może być stosowane dla dużych problemów wielomaszynowych. W tym przypadku, aby zmniejszyć złożoność generowane są częściowo uporządkowane harmonogramy POS.. 1.5.3 Tworzenie częściowo uporządkowanych harmonogramów Harmonogramy częściowo uporządkowane są wykorzystywane w badaniach dotyczących harmonogramowania w warunkach niepewności. Stosowana jest koncepcja generowania elastycznych uporządkowań zadań. Szukane są np. podzbiory złożone. - 22 -.

(25) z zadań przydzielonych do tego samego zasobu, które mogą być dowolnie permutowane między sobą bez naruszenia ograniczeń kolejnościowych. Tworzenie częściowo uporządkowanych harmonogramów POS przed fazą realizacji produkcji sprowadza się do znalezienia zbioru możliwych uszeregowań zadań, które mogą być reprezentowane w postaci tymczasowego grafu AON. Harmonogram jest elastyczny – każde z zadań może być rozpoczęte w przedziale czasowym (a nie w konkretnym momencie) określonym przez ten tymczasowy graf. Rozwiązania te są odporne na zmiany występujące w trakcie produkcji. Opracowywane są także zasady generowania harmonogramów POS dla problemu RCPSP [133]. Zamiast dokładnego określania czasów rozpoczęcia poszczególnych czynności rozważane są różne, możliwe czasy startu wykonywania zadań (ang. flexible start times). W ten sposób generowany jest zbiór możliwych rozwiązań. Harmonogramy POS są elastyczne, łatwo przystosowujące się do ewentualnych zakłóceń produkcyjnych. W fazie realizacji planu produkcji (w fazie reaktywnego harmonogramowanie) stosowana jest procedura wyboru najlepszego rozwiązania z dostępnych częściowo uporządkowanych harmonogramów POS, która dokonuje na bieżąco zmian w realizowanym uszeregowaniu. Zaletą tego podejścia jest możliwość szybkiego reharmonogramowania zadań przy zastosowaniu nieskomplikowanych technik, wykorzystujących harmonogramy POS. Wadą może być niewystarczająca koordynacja i organizacja produkcji przez stosowanie nieprecyzyjnie określonego harmonogramu.. 1.5.4 Analiza wrażliwości Analiza wrażliwości sprowadza się do określania wpływu zmiany parametrów systemu produkcyjnego na jakość harmonogramu początkowego. Odpowiada na pytanie, w jakim zakresie mogą się zmieniać wartości tych parametrów, aby otrzymane rozwiązanie pozostało optymalne lub akceptowalne. Analiza ta pozwala obliczyć graniczny poziom występowania zakłóceń, przy którym możliwe jest osiągnięcie zadowalającej jakości uszeregowania. Do realizacji wybierane są harmonogramy najmniej wrażliwe na zmiany w systemie produkcyjnym. Analiza wrażliwości stosowana jest w harmonogramowaniu zadań w warunkach niepewności [70][34][49], ale nie jest to technika zbyt popularna.. 1.6 Harmonogramowanie reaktywne Podczas harmonogramowania reaktywnego dokonywane są zmiany w realizowanym harmonogramie predyktywnym w odpowiedzi na pojawiające się zdarzenia, które mogą zaburzyć wydajność systemu lub uniemożliwić realizację tego harmonogramu. Zmiany te mają usprawnić proces produkcji: „naprawić” istniejący plan prac. W fazie reaktywnego szeregowania zadań do naprawy harmonogramu stosowane są następujące metody [163]:  reharmonogramowanie z przesunięciem prawostronnym (ang. right-shift rescheduling),  reharmonogramowanie częściowe (ang. partial rescheduling),  regeneracja całego uszeregowania (ang. complete regeneration). Metoda z przesunięciem prawostronnym polega na przesunięciu w prawo na wykresie Gantt’a czynności, które nie mogą być przetwarzane z powodu np. awarii maszyny. - 23 -.

(26) lub niedoboru materiałów. Metoda z przesunięciem prawostronnym znalazła zastosowanie w pracach badawczych [1][36][164]. Następną metodą naprawy zakłóconego uszeregowania zadań jest metoda częściowego reharmonogramowania partial rescheduling, która sprowadza się do przestawiania tylko tych czynności, które są bezpośrednio lub pośrednio zakłócone (ang. affected operations rescheduling). Dąży się do jak najmniejszych zmian w harmonogramie w celu utrzymania stabilności systemu. Opracowywane są procedury realizujące to podejście [1][143]. Naprawa zaburzonego uszeregowania zadań może odbywać się również metodą regeneracji harmonogramu (complete regeneration, total regeneration). W podejściu tym zadania nie przetworzone do momentu reharmonogramowania, również te, których zaburzenie nie dotyczy, są poddawane procesowi szeregowania. Wadą tej metody jest długi czas obliczeń. Mimo to wiele prac badawczych wykorzystuje to podejście, ze względu na jakość uzyskiwanych harmonogramów [1][36][164]. Poza określeniem sposobu zmiany uszeregowania konieczne jest określenie momentów, w których należy zmienić harmonogram. Odpowiednia częstotliwość ponownego harmonogramowania ma duży wpływ na wydajność realizowanego uszeregowania zadań. W zależności od przyczyny podejmowania decyzji szeregujących i znaczenia napływających zdarzeń, stosuje się następujące taktyki (ang. rescheduling policies) [163]:  reharmonogramowanie periodyczne (ang. periodic rescheduling),  reharmonogramowanie wymuszone zdarzeniami (ang. event-driven rescheduling),  reharmonogramowanie hybrydowe (ang. hybrid rescheduling). W reharmonogramowaniu periodycznym [123][164] zmiany w harmonogramie dokonywane są co pewien okres, a nie po każdym zaburzeniu planu produkcji. Jest to uzasadnione tym, że w systemach rzeczywistych, nowe zadania pojawiają się periodycznie, w związku z okresowymi zamówieniami. Stosowanie takiej taktyki zwiększa stabilność systemu, ale może spowodować jego mniejszą wydajność. Trudnym zadaniem może być określenie optymalnego okresu reharmonogramowania. W reharmonogramowaniu wymuszonym zdarzeniami korekty harmonogramu dokonuje się każdorazowo, gdy nastąpi jego zakłócenie lub zostanie spełniony określony warunek wyzwalający zmianę harmonogramu. W statycznym środowisku tę taktykę stosuje się do zmiany harmonogramu w przypadku awarii maszyny [167]. Natomiast w dynamicznym środowisku stosowane są różne koncepcje zmiany harmonogramu wykorzystujące to podejście. Wykorzystywane są tzw. wyzwalacze reharmonogramowania (ang. rescheduling triggers) np.: zadania są ponownie harmonogramowane, gdy liczba pojawiających się nowych zadań produkcyjnych przekroczy określony próg [164], nowe uszeregowanie zadań jest tworzone każdorazowo gdy pojawia się nowe zadanie produkcyjne itp. Zmiana uszeregowania zadań może być odpowiedzią na pojawiające się konflikty czasowe, konflikty zasobów lub jest związana z szansą poprawy kolejności zadań w związku ze zwiększeniem się dostępności zasobu [143]. W systemach o dużych mocach obliczeniowych możliwe jest generowanie nowego harmonogramu (lub zmienianie istniejącego) w odpowiedzi na każde zdarzenie zmieniające stan systemu produkcyjnego. Wymagania obliczeniowe rosną jednak gwałtownie wraz ze wzrostem liczby pojawiających się zdarzeń. Poza tym systemy produkcyjne poddawane ciągłemu procesowi reharmonogramowania cechują się niską stabilnością [123]. Reharmonogramowanie hybrydowe to połączenie dwóch powyżej opisanych taktyk. Zmiany harmonogramu dokonywane są periodycznie lub wywołane są szczególnie istotnymi zdarzeniami (awaria maszyny, pojawienie się zadania, które musi być bez-. - 24 -.

Cytaty

Powiązane dokumenty

Ponadto trzeba zwrócić uwagę, że w przypadku optymalizacji dyskretnej za pomocą najczęściej stosowanej metody podziału i oszacowań zadanie programowania liniowego

wana dla przedstawiciela danego typu technologicznego. Ze względu na różne wymiary przedm iotów czasy trwania poszczególnych operacji w marszrutach indywidualnych

Opis algorytmu nadążnego harmonogramowania produkcji oraz dyskusja stabilności procesu NHP zostały przedstawione w innych artykułach tego samego numeru Zeszytów

N astępnie udowodniono, że zaległości w nadążaniu planów w ykonaw czych generowanych przez algorytm harmonogramowania nadążnego za odpowiednimi planami operacyjnymi są

cedur z pakietu pierwszego oraz jedną z drugiego i w ten sposób dokona syntezy algorytmu optymalizacji dla rozwiązywanego zagadnienia.. Podstawowymi metodami optymalizacji

Rozwiązanie optymalne jest osiągalne, gdy liczba zadań jest wz gl ęd ni e mało lub liczba ograniczeń w z gl ęd ni e duża. Dla

Przydział zadań dla danego wózka kończy się, gdy czas tzz równy jest czasowi zakończenia okresu harmonogramowania. Ze względu na to, że większe znaczenie dla

wania długookresowego może być bardzo bliskie rozwiązaniu optymalnemu, jeśli tylko stosunek długości ruchomego odcinka planowania do średniego odstępu czasu między