Autoreferat do rozprawy doktorskiej OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI Michał Mazur Gliwice 2016 1
2
Montaż samochodów na linii w ciągłym ruchu został opracowany na początku XX wieku. Pomimo upływu ponad 100 lat wiele zagadnień poświęconych harmonogramowaniu pozostaje wciąż niezbadanych. Badania prowadzone w ramach niniejszej rozprawy dotyczą wyznaczania harmonogramu optymalnego. Wskaźnikiem jakości harmonogramowania jest czas uszeregowania. Plan produkcji jest nieuporządkowanym zbiorem samochodów, które w ramach procesu wytwarzania będą wprowadzane na linię montażu. W zależności od kolejności wprowadzania samochodów na linię, wskaźnik jakości harmonogramu przyjmuje różne wartości. Z punktu widzenia przedsiębiorstwa najbardziej korzystna jest realizacja planu produkcji w możliwie jak najkrótszym czasie. Wybór sekwencji zapewniającej minimalny czas uszeregowania umożliwia optymalne wykorzystanie zasobów linii i w dłuższej perspektywie czasu przekłada się na obniżenie ceny produktu i konkurencyjności przedsiębiorstwa. Wyznaczanie harmonogramu optymalnego jest skomplikowanym zagadnieniem kombinatorycznym. Dla niebanalnych planów produkcji wyznaczenie harmonogramu optymalnego bez wspomagania komputerowego jest praktycznie niemożliwe. Celem rozprawy jest opracowanie metody wyznaczania harmonogramu optymalnego z wykorzystaniem programowania w logice z ograniczeniami. Zaproponowana metoda składa się z dwóch etapów. Rysunek 1. Idea dwuetapowego wyznaczania harmonogramu optymalnego. Pierwszym etapem jest sekwencjonowanie. Spośród wszystkich sekwencji które mogą być wyznaczone na przykład metodą przeglądu zupełnego - wybierane są jedynie sekwencje spełniające wszystkie ograniczenia wydajności stanowisk. Sekwencje te, zwane sekwencjami dopuszczalnymi, są bazą do wyznaczania harmonogramów. Liczba sekwencji dopuszczalnych jest uzależniona od przyjętych ograniczeń linii, zależnych od planu produkcyjnego i samej linii. Z reguły liczba sekwencji dopuszczalnych jest zdecydowanie mniejsza niż liczba sekwencji wynikających z przeglądu zupełnego planu produkcji. Redukcja liczby rozwiązań wynika z istnienia ograniczeń wydajności stanowisk, będących źródłem sekwencji niedopuszczalnych. 3
W drugim etapie na drodze symulacji przebiegu produkcji, sekwencje dopuszczalne są poddawane harmonogramowaniu. W zależności od sekwencji i czasów trwania czynności montażu samochodów na poszczególnych stanowiskach, czasy uszeregowania odpowiadające poszczególnym harmonogramom są różne. Harmonogram z minimalnym czasem uszeregowania spośród wszystkich wyznaczonych harmonogramów jest harmonogramem optymalnym. Jest również rozwiązaniem zadania harmonogramowania. Podejście dwuetapowe harmonogramowania należy uznać za metodę innowacyjną, dotychczas niespotykaną w dostępnych publikacjach. Ze względu na wprowadzenie dodatkowego etapu, jakość wyznaczonych w ten sposób harmonogramów jest wyższa w porównaniu z dotychczas spotykanymi metodami. Wynika to z faktu, że wszystkie sekwencje dopuszczalne były traktowane jako równoważne. Wprowadzenie etapu harmonogramowania umożliwia przyporządkowanie sekwencjom dopuszczalnym harmonogramów z odpowiadającymi im czasami uszeregowania. Przeprowadzone eksperymenty potwierdzają tezę, że czasy uszeregowania poszczególnych harmonogramów dopuszczalnych różnią się między sobą. W związku z tym sekwencje dopuszczalne są źródłem istnienia harmonogramów optymalnych i nieoptymalnych. Rysunek 2. Ontologia wyznaczania harmonogramu optymalnego montażu samochodów. Autor proponuje rozwiązania zadania metodą dokładną. Oznacza to, że zastosowana metoda gwarantuje wyznaczenie harmonogramu optymalnego o ile takowy istnieje. W przeciwieństwie do metod przybliżonych, metody dokładne nie są obarczone ryzykiem nieuwzględnienia rozwiązania optymalnego w procesie poszukiwań, przykładowo na skutek utknięcie w minimum lokalnym. 4
Rysunek 3. Schemat dwuetapowego wyznaczania harmonogramu optymalnego. Praca ma charakter badawczy. Rozprawa składa się z dwóch zasadniczych części: - część teoretyczna, w której zawarta jest ontologia montażu, opis zastosowanego modelu linii oraz wyrażone mierniki jakości sekwencji i harmonogramów, - część badawczo - eksperymentalna, w skład której wchodzą próby wyznaczenia harmonogramów optymalnych dla zróżnicowanych planów produkcji i różnych linii montażu. Tezy pracy brzmią następująco: 1. Istnieje konieczność wyznaczenia ontologii informatycznej dla dwuetapowego procesu wyznaczania harmonogramu optymalnego montażu samochodów na linii. 2. Minimalizację czasu uszeregowania dla samochodów na linii montażu można uzyskać dekomponując zadanie wyznaczania optymalnej kolejności samochodów na linii na dwa kolejno realizowane podzadania: a. podzadanie wyznaczania wszystkich sekwencji z nieuporządkowanego zbioru stanowiącego plan produkcyjny, spełniających wymagania ograniczeń wydajnościowych stanowisk montażu; sekwencje te będą nazywane sekwencjami dopuszczalnymi, b. podzadanie wyznaczenia takiego harmonogramu montażu ze zbioru sekwencji dopuszczalnych, dla którego czas uszeregowania będzie minimalny; harmonogram ten będzie nazywany harmonogramem optymalnym. 3. Obydwa podzadania z drugiej tezy można w sposób deklaratywny i praktycznie efektywny rozwiązać korzystając z programowania w logice z ograniczeniami. 5
Postawione tezy zostały potwierdzone serią eksperymentów. Do praktycznego wyznaczania eksperymentów zastosowano technikę programowania w logice z ograniczeniami (CLP - Constraint Logic Programming) jako programistyczną technikę rozwiązania zadania. Z analizy literatury wynika, że istniejąca ontologia montażu samochodów na linii jest niewystarczająca do realizacji postawionych celów, dlatego należy ją uzupełnić i uporządkować. Ponieważ problem wyrażony w postaci klauzul jest rozwiązaniem zadania w CLP, ontologia wyrażona w postaci schematu pojęciowego jest niezwykle ważna. Dlatego obszerna część pracy została poświęcona uzupełnieniu ontologii montażu. CLP jest środowiskiem programistycznym, które umożliwia intuicyjne programowanie problemu sekwencjonowania i harmonogramowania. Zaprogramowanie ograniczeń indywidualnie przyporządkowanych do poszczególnych samochodów jest równie łatwe dzięki deklaratywności CLP. Badania polegały na dwuetapowym wyznaczaniu harmonogramów optymalnych. Aby zrealizować część badawczo - eksperymentalną, stworzono szereg programów sekwencjonowania i harmonogramowania w języku CLP, przyjęto parametry linii, określono plan produkcji i wyznaczono harmonogramy optymalne. Wykazano, że harmonogramowanie jest szczególnie zasadne dla zrównoważonej linii montażu i planu produkcji o takich parametrach, że różne sekwencje dają w rezultacie harmonogramy o zróżnicowanych czasach uszeregowania. W rozprawie podjęto również problem trudności wyznaczania sekwencji dopuszczalnych. Wykazano, że implikacja ograniczeń wydajnościowych jest jedną z największych trudności w rozwiązaniu zadania sekwencjonowania. Rzeczywistym wyzwaniem napotkanym podczas realizacji pracy okazał się czas poszukiwań rozwiązania optymalnego. Stosunkowo wysoki czas wyznaczania rozwiązania wynika z istnienia eksplozji kombinatorycznej. Oznacza to, że każdy dodatkowy samochód w planie produkcji powiększa rozmiar poszukiwań. Wzrost przestrzeni poszukiwań jest silnie nieliniowy w zależności od kolejnych samochodów, dlatego redukcja czasu poszukiwań okazała się istotnym celem do spełnienia. Zaproponowano i wdrożono wiele metod optymalizacji czasu poszukiwań, na przykład ograniczanie wielkości dziedzin zmiennych domenowych, wybór optymalnej metody uziemiania zmiennych, stosowanie predykatów globalnych, zastosowanie wiedzy heurystycznej. Przedstawiono również związek czasu trwania poszukiwań i wielkości planu produkcji. Dla przyjętego paradygmatu programowania określono graniczną wartość czynności montażu do harmonogramowania na poziomie 1550 sztuk. Do oryginalnych osiągnięć autora należy zaliczyć: - uzupełnienie i uporządkowanie ontologii montażu, - opracowanie modelu linii z przedterminowym rozpoczęciem czynności montażu, 6
- opracowanie dwuetapowej metody wyznaczania harmonogramu optymalnego, - stworzenie programów sekwencjonowania i harmonogramowania w CLP wraz z określeniem granic stosowalności wyznaczonej metody, - opracowanie i implementacja redukcja czasu wyznaczania harmonogramu optymalnego. 7